
Computer Graphics Engineer at Luxion, working on @KeyShot3D, KeyVR and related products.
Aarhus, Denmark
Joined December 2012
- Tweets3.2K
- Following739
- Followers368
- Likes18.9K
You know how Day of the Tentacle had the Chron-O-John?
Yeah, I've joined a service that rhymes with that and starts with a big M.
@janhsimon on the gamedev server. See you there!
Just released! OpenXR Vulkan Example project v1.0.0 github.com/janhsimon/openxr-… It shows how to use both APIs together and focuses on simple code. It features multiview rendering, staged, combined vertex/index and a single uniform buffer for high performance. #OpenXR #Vulkan #Khronos
I put together a basic particle engine recently using CPU simulation but hardware instanced rendering (OpenGL) and ImGui (I made my own curve editor widget). Surprising how much you can do with a couple simple parameters and random variation. First a smoke effect, then some snow!
Jan Simon retweeted
New Sponza scene available from Intel Graphics Research intel.com/content/www/us/en/…
Just finished Celeste in 9:30h with 35 strawberries and around 3000k deaths. For sure one of the best platformers I have ever played - WHICH is also why the very rare moments where it didn't quite hit the mark stood out so much.
Last but not least, the very end of the game had extremely difficult jumps (flag 20) and endless spike tunnels where extremely precise jumping and boosting was required. The rest of the game had managed to be fun and challenging without resorting to "I Wanna Be The Guy" methods.
Some lategame mechanics that provide a boost to the player seemed to not be set up in a way that they would automatically land them safely. Some would lead straight into spikes. Boosters/platforms should always line up nicely to support the player even if it takes time to polish.
An item later in the game provides a jump boost when touched and then moves to a new spot. This is frustrating because at first you can't know where it's going to move -> trial and error. Especially frustrating in difficult rooms. Lesson: All rooms should be beatable on first try
Unfortunately, the wind mechanic came back again. Lesson to learn here: If your game is awesome because of the controls, don't take that away from the player. If you have to, make the wind accelerate the player, rather than slowing them down. Don't mix moving platforms with wind.
I'm still working on my skeletal animation project. I went from storing fully baked transformation matrices to storing individual pos/rot/scale offsets (relative to the bind pose) per bone/keyframe. This has unfortunately caused a return of the eldritch horror, as you can see...
I am finally getting around to playing Celeste and am, unsurprisingly, having a great time with it. The controls really are perfect. Not loving this wind section I'm in right now though, seems to work against what the game does best.
OH NO, I did it again. Switching from storing full transformation matrices to separate loc, rot, scale for bone keyframes has unleashed ANOTHER eldritch horror. And this one's even worse if you ask me, much worse.
Kinda reminds me of Elden Ring enemies though. :)
Progress! Fixed the normals.
I still have to find out what exactly went wrong with my bone interpolation/matrix decomposition, and why I'm seeing motion glitches when playing the animation back very slowly (keyframe blending). But it's getting there! :)
Now that it's fixed, here's a much better animation :)
Straight from Sketchfab into Blender via FBX import, then via my self-written Python exporter into my own custom 3D file format, then read in by my simple C++ viewer application and into OpenGL! EASY!
For reference, this is what this guy should look like without interpolation:
(I swear if this is quaternion order, wxyz vs xyzw, again...)






