SceneNavi Update Page
Current Version
SceneNavi v1.0 Beta 9b
Source code on GitHub
Release Notes
v1.0 Beta 9b ("Hotfix Redux?")
- Fixed generated GLSL shader code somewhat; should fix float conversion error during shader compilation
- Changed combiner emulation initialization; should now only try to initialize a combiner type when selected by user, not all on every startup
v1.0 Beta 9a ("My First Hotfix")
- Added additional sanity checks to prevent potential EntryPointNotFoundException and NullReferenceException, especially on lower-end hardware
- Changed versioning code to allow for hotfixes
v1.0 Beta 9 ("You've Got Shaders In My Fixed Functions!")
- Added new GLSL-based combiner emulation, still missing certain rendering details (ex. automatic texture-coordinate generation for reflections)
- Added support for anti-aliasing and mipmapping in renderer; can be toggled from menu
- Changed application configuration to use Nini library instead of .NET Properties.Settings
- Fixed various bugs; combiner inaccuracies, display list caching, Scene TreeView generation, mesh header types, etc.
- Added experimental help system, displays help string in status bar when hovering over menu items; still needs work
- Various other OpenGL-related changes and additions (ex. extension checks)
- Various minor GUI changes (ex. status bar appearance, Options menu arrangement)
v1.0 Beta 8 ("Fresh Water Laced With Bugfixes")
- Added waterbox support; allows changing of waterbox position, size, room number and other properties
- Added saving support for individual scene and room files; still requires a ROM to be loaded beforehand, but saves changes to the separate files
- Fixed loading of individual scene and room files; the changes to the treeview in Beta 7 broke header selection
- Fixed SFX and reverb options under Scene Metadata being disabled; slight GUI changes broke this feature
- Fixed ROM information window cutting off text prematurely if null byte is encountered in the ROM header's game title or ID
- Fixed and improved the actor editing GUI and underlying actor definition reader code slightly
- Fixed actor rotation rendering; the order in which rotation was applied during drawing was wrong before
- Added additional sanity checks to prevent unfixed "Stalfos Middle Room" (#120, syotes) from causing an exception on selecting its room
- Improved update and version checking functionality; now displays release notes from remote RTF file
- Added (temporary) program icon
v1.0 Beta 7 ("It's Not Dead!")
- Fixed conversion of I4 and I8 type textures; finally fixes missing alpha channels on ex. Hyrule Field pathways, certain cobwebs, etc.
- Added support for custom maps generated by Hylian Toolbox; problem was related to polygon type definition offsets
- Changed scene and room selection tree; headers now condensed into stages, similar to Map Select screen
- Area title card can now be exported for editing and reimported
- Added stubs for a few other features (ex. loading and editing of environment settings); not fully implemented yet
v1.0 Beta 6
- Finally added Scene Metadata tab, so far contains a few sound-related settings (daytime BGM, nighttime SFX, reverb); more settings to come
- Actor definition format changed; actor number now part of definition, definition can be set as default for certain actor types unless overridden by specific definition
- Changes to transition actor handling; added drop-down lists for rooms to transition actor editing, renamed some options for clarity
- Actor definitions now also support the properties "DisplayModel", "PickModel" and "FrontOffset", which are currently used mainly with transition actors (documentation forthcoming)
- Added mouse-based selection of rooms in static objects mode; only works when collision rendering is disabled; selects collision polygons as usual when enabled
- Added mouse-based selection of room model triangles and vertices; allows editing of vertex colors and alpha
- Fixes to Ucode interpreter to not reset certain parameters on display list calls (DL, BRANCH_Z); fixes missing textures on ex. Death Mountain
- Added texture loading macro workaround to Ucode interpreter, now also tries to load textures on SetCombine command; fixes a few missing textures, ex. walls in Water Temple's first room
- Fixes to texture loading macro implementation, potentially did not correctly apply palettes to CI-type textures; fixes incorrect textures on certain custom maps
- Fixed offset detection error with polygon type definitions on some custom maps; now correctly loads polygon types
- Removed some unnecessary OpenGL function calls; gives notable FPS increase in many cases, such as certain temples
- Added more fallbacks for lower-end hardware, added detection of Intel graphics hardware to disable combiner emulation regardless of the hardware's reported capabilities
- Fixed room display list caching; now no longer re-renders rooms on every scene change, even if a room has been cached before with the same settings (i.e. textures en-/disabled)
- Some refactoring to the program's internal data storage (i.e. which scene header is active and what it contains, which room header is active, etc)
- A few object picking bugfixes; ex. some erratic behavior when selecting things via middle-click
- More status messages, ex. for ROM loading and saving
- Rearranged Options menu
v1.0 Beta 5
- Texturing support and faking of PrimColor-based colorization for lower-end hardware
- Some bugfixes (glClearDepthf entry point, Control key IndexOutOfRangeException)
v1.0 Beta 4
- Changed mouse behavior to have three different modes:
• Camera mode: Camera movement only
• Moveable objects mode: Select and move things considered "moveable" by the program (actors, waypoints)
• Static objects mode: Select immobile, static things (collision polygons)
Modes can be selected via menu or can be cycled through by clicking the mode label on the status bar
- Implemented mouse-based actor and waypoint movement:
• Left click: move object left, right, up and down (or X and Y axes with neutral camera)
• Middle click OR left click and Ctrl key: move object forward or backward (or Z axis with neutral camera)
• Right click: opens context menu that allows rotating the object in both directions on any supported axis
- Limited collision editing enabled; collision polygons' polygon type association, and polygon types' ground type and raw 64-bit definition can be edited
(more separate options for ex. exit triggers, damage, etc. to come)
- Added preliminary support for editing of individual scene and room files
• Note: does not yet support saving, highly WIP
- Improved overall collision overlay performance
• Might incur slight stuttering when rapid changes are done to the collision, such as changing a polygon's ground type
- Added ROM byte order detection and automatic byteswapping functions
• If an incompatible byte order is detected, the program will ask if the user wants the ROM to be converted or, if the user does not want this, cancel loading
- Added update checking functionality, can be manually accessed via the menu
• Checks online for newer version of the program and can direct the user to a download if one is found
- Actual functionality for the window's status bar implemented; now shown are:
• Current mouse mode
• Information about the currently loaded scene and room and/or general status messages
• Current camera coordinates
- Added VSync option for FPS limiting, can be toggled from the menu
- Improved OpenGL-side housekeeping functions for GL extensions, texturing and combiner emulation
• Should hopefully improve usability with lower end graphics cards
v1.0 Beta 3
- Support for ROMs with z64tables hack
- ROM loader error handling changed; now allows access to exception details for reporting
- Human-readable actor names now read from ActorNames.xml instead of individual actor definitions
- XML data files rearranged; removed AddressTranslations.xml and address translator class, added more versatile hashtable reader class, also used by actor names
- Object names are now version-independant, using the hashtable reader class mentioned above
- Added collsion rendering with two different highlighting modes (all white, or approximately by ground type)
- Actor definitions changed to use hexadecimal values for rotation
v1.0 Beta 2
- Some renderer bugfixes and improvements; blending error fixed, Texgen support added
- Added path waypoint support; waypoints can be edited and saved, their rendering, and them being linked by lines, can toggled from the menu
- Changed the tab order according to your suggestions (new Scene Metadata tab is still empty and hidden)
- Fixed - or rather worked around - a bug with multi-header scenes; caused room actor changes to not be saved, unless they were done from the last scene header
- New actor definition for the Kakariko carpenters
- Texturing and combiner emulation can now be toggled from the menu
v1.0 Beta 1
- Improved Ucode interpreter and renderer (texturing, color combiner)
- Room objects and special scene objects editing
- Now scans for and reads more data tables (actor, object and exit tables)
- Data table editing (exit and scene tables, within limits)
- Improved address translation support (now works for scene, room and object names)
- More XML actor definitions and address translations
- Preliminary mouse-based actor editing (so far only selecting actors via right-click)
v0.9 WIP
SceneNavi - written 2013-2014 by xdaniel / http://magicstone.de/dzd/