cbhacks / CrashEdit

Unofficial Crash Bandicoot 1/2/3 Level Editor
https://www.cbhacks.com/tools/crashedit/
Other
135 stars 25 forks source link

Completely revamp a lot of things #159

Closed ManDude closed 7 months ago

ManDude commented 1 year ago

Massive overhaul to some parts of the program. The NSF can be accessed from its chunks and entries now which means we no longer need to keep a lot of potentially stale entry references. As a result, live EID lookups are done in many places where they weren't before and there's a lot more error checking. This doesn't have much of a performance impact. There is also a console window now!

Merged Crash 3-specific code into the Crash 2 code since 99% of it was duplicate.

The 3D rendering code was completely redone from the ground up. It's now much more compact, way faster, uses less memory and is written in "modern" OpenGL (did you know the latest version of OpenGL is actually ancient?) and in turn way easier to write new renderers for. The same shader is used to render all of the in-game-looking graphics which also gives them all a consistent look. Z-fighting is (finally) fixed. The renderers all output vertices that are in the same scale as well, which makes the controls more consistent. The control scheme has also been changed. You now use WASD to move the camera relative to where you're aiming at, use the left click to change aim and scroll wheel to zoom in/out. The 3D viewer can also render text too, and you can pick the font and resolution that you want. There's also an in-viewer help text for the controls, so they're not completely obscure any more.

Note that the new 3D viewer requires OpenGL 4.3. This is a decent bump up from... whatever the old one required (probably 2.something) but frankly I'm not sure how you could still have a machine that doesn't support 4.3 in 2023.