Kiri Jolly
Graphics Programmer
expiredpopsicle@gmail.com, 1-805-406-0812
Skills
-
C/C++ programming
Windows and Linux programming. ANSI C, C99, C++98, C++11 and up. DOS, Windows, and Linux development.
-
Assembly language
6800 assembly, 68HC11 assembly, x86 assembly (real-mode and 32-bit, DOS and Linux), small amount of x86-64 assembly.
-
Graphics programming
Engine development for PC, XBox 360, XBox One, and Stadia. DirectX API, OpenGL API. Vulkan API.
-
Build systems
Unreal Build Tool, GNU Autotools, handwritten Makefiles, Watcom Makefiles. Continuous integration with Gitlab. CI with Jenkins.
-
Unreal Engine 4 and 5
Graphics programming, blueprints, animation blueprints, materials. C++ coding. Setup and use on Windows and Linux. Android development and mobile optimization. Plugin development.
-
Godot Engine
GDScript, engine development, general game logic, UI development. VTuber software in Godot.
-
Linux/Unix skills
Installation and use. Use and configuration for desktop and development. Maintenance and updating. Mainly Debian and Debian-based distributions.
-
Specific applications
Emacs, Visual Studio, Blender, Gimp, Krita, Photoshop, Inkscape, Illustrator, Blender, Clang, GCC, GDB, Valgrind, American Fuzzy Lop, Watcom compiler for DOS.
-
XBox 360 development
Programming and performance profiling.
-
XBox One development
Graphics engine optimization.
-
Stadia development
Tech demos, exploring the possibility of a full data center as a game console at Google.
-
Android development
Augmented reality, general graphics programming and graphics performance work.
-
3D game engine and content pipeline engineering
Blender scripting and exporters. General asset processing (models, textures, etc). In-house import/export tools. Unreal 4 texture/model asset pipelines.
-
Version control software
Git (setup and use), SVN (setup and use), Perforce (usage only), CVS (please don't).
-
Audio programming
MOD format decoding and playback (from scratch, no libraries), Soundblaster 2.0 hardware programming, ALSA MIDI programming. Phoneme recognition for real-time VTuber face animation.
Professional Experience
-
Cryptic Studios (Second employment at Cryptic)
Los Gatos, CA. March 2021 - current. Staff Software Engineer.
-
Unannounced Title - PC (2022 - 2023)
- Graphics programming
-
Magic: Legends - PC, PS4, XBox One (March 2021-June 2021)
Free-to-play MMORPG.
- Graphics programming
-
Neverwinter - PC/XBox One/PS4 (March 2021-current)
Dungeon and Dragons license MMORPG.
- Graphics programming
- Engine programming
-
Star Trek Online - PC/XBox One/PS4 (March 2021-current)
PC Space MMORPG set in the Star Trek universe.
- Graphics programming
- Engine programming
-
Champions Online - PC (March 2021-current)
- Community events
- Graphics programming
- Engine programming
-
-
Google
Mountain View, CA. March 2017 - March 2021. L5 Software Engineer.
-
Unannounced Stadia projects - Stadia (March 2019-Current)
- Graphics programming with Vulkan and Unreal 4.
-
ARCore for Unreal - Android (March 2017-March 2019)
Google's augmented reality plugin for Unreal Engine 4.
- Graphics programming
- Mobile optimization
-
-
Neoglyphic Entertainment
Campbell, CA. August 2015 - March 2017. Senior Programmer.
-
NeoFur - PC (Win/Mac/Linux), Android, iOS, PS4, XBox One (August 2015-March 2017, launched 2016)
Fur and hair rendering and simulation plugin for Unreal Engine 4.
- Graphics programming
- Mobile optimization
- Build engineering
Notable titles using NeoFur:
- Tekken 7
- Marvel Powers United VR
-
-
Trion Worlds
Redwood City, CA. December 2014 - August 2015. Senior Graphics Engineer.
-
Rift - PC (December 2014-August 2015, launched 2011)
Free-to-play PC MMORPG.
- Graphics programming
-
-
Cryptic Studios
Los Gatos, CA. July 2009 - November 2014. Programmer.
-
Neverwinter - PC (2009-2014, launched 2013), XBox One (2013-2014)
Dungeon and Dragons license MMORPG.
- Graphics programming
- Engine programming
- XBox One graphics optimization
- WINE support
-
Star Trek Online - PC (2009-2014, launched 2010), Mac (2009-2014, launched 2014)
PC Space MMORPG set in the Star Trek universe.
- Graphics programming
- Engine programming
- Mac port using Transgaming middleware
- WINE support
-
Champions Online - PC (2009-2012, launched 2009)
PC Superhero MMORPG.
- Graphics programming
- Engine programming
- User interface
- XBox and XBox-controller specific user interface
-
Unshipped/Noncommercial Projects
-
SnekStudio (2022-current)
VTuber rendering software written in Godot Engine.
Features:
- Face/hand tracking through MediaPipe, or...
- VMC protocol support
- Modular plugins for user-created addons
- Twitch IRC/PubSub/EventSub integration
- Cross-platform (Linux and Windows)
Currently in use for daily Twitch streams.
Open source release coming soon.
-
Ninkasi (2017-current)
Another scripting language!
Features:
- Cross-platform
- Runs in DOS! (Real-mode and 32-bit protected mode)
- Written in ANSI C
- No dependencies beyond the standard C library
- Hand-written lexer and parser
- Sandboxable*
- Robust error handling and recovery
- Faster than DerpScript
- C-like syntax
- VM state serialization and deserialization
- Serialized state portability
- Coroutines (new, as of 2019)
- Source available:
- https://github.com/ExpiredPopsicle/Ninkasi
- https://git.intoxicoding.com/Intoxicoding/Ninkasi
*Tested extensively with AFL, Valgrind, static code analysis, undefined behavior sanitizers, and running on a variety of platforms of different word size and endianness, but ultimately the security cannot be guaranteed.
-
Ninkasi Preprocessor (2019-current)
ANSI C preprocessor built from scratch, because Ninkasi needed multiple-file and macro support.
Features:
- Same minimal platform, compiler, dependencies, and memory requirements as Ninkasi
- Can be used to compile actual C code
- Tested with GNU headers and mcpp (http://mcpp.sourceforge.net/) (tested so that all valid programs compiled)
- Source available:
- https://github.com/ExpiredPopsicle/Ninkasi-Preprocessor
- https://git.intoxicoding.com/ExpiredPopsicle/ninkasi_preprocessor
-
DerpScript (2013)
Scripting language with C-like syntax and a simple API.
Features:
- Mark-and-Sweep Garbage collector
- Lexer and parser written in C++ (no parser generator)
- Standard C++ and cross-platform (no dependencies beyond the C++ standard)
- Source available:
- https://github.com/ExpiredPopsicle/DerpScript
-
Lily Project 2 (2009-2010)
Side-scrolling platformer game engine.
Features:
- Lua integration
- OpenAL and Ogg Vorbis sound
- OpenGL and DirectX 9 renderers
- Runs on Linux, Mac, and Win32
Education
-
Bachelor of science degree in Computer Science: Game Design
University of California, Santa Cruz, December 2008