Currently debugging heightfield's PhysX collider integration to the engine. The visuals were cool so I'm sharing them, and that's the thing I love with graphics programming : even though the results are wrong, they still look cool asf. #solodev#gamedev#indiedev#3dart
Just dropped a new set.
It would probably please my indie gamdevs and other retro/PS1 nostalgics out there. Enjoy !
https://t.co/107mo8au2S
#indiedev#gamedev#retro#dnb#ps1
Managed to load colliders on-the-fly for the infinite chunked houses based on its distance from the player. This removed the massive performance drop I had when loading the colliders for all loaded chunks. #solodev#gamedev#physics#enginedev#vulkan
I managed to create chunked triangle mesh colliders from a list of vertices for my infinite houses and make it interact with player, but at what cost... Thereβs a (comprehensible) massive drop in performance. itβs now time to optimize all of this ! #devlog#solodev#vulkan
Created a custom line rendering pipeline to debug the shapes generated by PhysX by retrieving the world space line coordinates of the shape colliders. This helped me realize that the collider capsule for my player was oriented the wrong way... #gamdev#indiedev#solodev#vulkan
I managed to integrate PhysX into my engine and redirect the physics loop to the API calls. Itβs like discovering a whole new game, I love it !
Now I just need to figure out why the player is so small and has turned into a bouncing ball... #indiedev#gamedev#solodev#vulkan
Currently having fun playing around with snippets from NVIDIA's PhysX library, with a view to integrating it into my engine soon. It was fun implementing my first colliders myself, but it's clear I'll never do better than this... #gamedev#indiedev#solodev#devlog#vulkan
IMPORTANT : Note, however, that in my case I don't have a model matrix for 3D vertices. If you do have one, you'll also need to express your model matrix relative to your camera's position (since the camera's position is set to 0 in the view).
To fix the problem in my case, it couldn't be simpler : reset the camera's position, as if it were always at 0. This removes the floating-point numbers that were causing the inaccuracy, and the results are correct again.
The project now runs on Linux and has become cross-platform !
It was a nightmare to set up, but since Clang is much more restrictive than MSVC, I was able to catch a number of errors that went undetected on Windows, making the engine much more robust. #devlog#vulkan#solodev
I recreated the famous PS1's Affine Texture Warping for the house texture to add even more weirdness and strangeness to the place. The house now seems to warp and live with the player's movements. #gamedev#indiedev#devlog#vulkan
Coming from PS1's limitations on UV-mapping using only the XY coordinates of a vertex, you can very easily reimplement this effect on youself in shader, using the "noperpective" qualifier when inputting/outputing your uv coordinates from vertex to fragment shader.