HeroEngine Sapphire

From HEWIKI
(Difference between revisions)
Jump to: navigation, search
(Sapphire.e Corrections)
(Release Dates: November 2012 - Present)
 
(26 intermediate revisions by 3 users not shown)
Line 3: Line 3:
 
=== Codename: Sapphire  ===
 
=== Codename: Sapphire  ===
 
=== Internal Branch Version Base: 2.0  ===
 
=== Internal Branch Version Base: 2.0  ===
=== Release Dates: November 2012 - Present ===
+
=== Release Dates: November 2012 - February 2014 ===
  
<br>  
+
<br>
  
 
== Notes  ==
 
== Notes  ==
Line 22: Line 22:
 
*[[SpeedTree]] 6.0  
 
*[[SpeedTree]] 6.0  
 
*XInput for gamepad, joystick, steering wheel, etc input support
 
*XInput for gamepad, joystick, steering wheel, etc input support
 +
*fmod 4.44.10
 
<br>
 
<br>
  
Line 113: Line 114:
 
*Fixed spelling error in the alert window when editing clean engine GUI controls
 
*Fixed spelling error in the alert window when editing clean engine GUI controls
 
*Added in HE override for  _OnClientWindowFocusChange
 
*Added in HE override for  _OnClientWindowFocusChange
 +
<br>
 +
 +
=== January 2013 Enhancements & Corrections ===
 +
*new: Added new method overrides (HE_SubscribeClientToAreaEditQueues, HE_UnsubscribeClientFromAreaEditQueues, HE_SubscribeAccountToSpatialAwarenessForArea,  HE_UnsubscribeAccountFromSpatialAwarenessForArea) hooking into the new in Sapphire seamless area subscription mechanisms for spatial awareness and edit queues.
 +
*fix: ItemSystem corrected reversed boolean check in _DoesAccountOwnThisContainer()
 +
*change: _AccountClassMethods supports four new override methods related to account subscription to edit queues and spatial awareness.  HE_SubscribeClientToAreaEditQueues(), HE_UnsubscribeClientFromAreaEditQueues(), HE_SubscribeAccountToSpatialAwarenessForArea() and HE_UnsubscribeAccountFromSpatialAwarenessForArea()
 +
*Fix: timeInterval properties on FX specs now save correctly
 +
*Fix: corrected a texture issue with the sample white box and white sphere
 +
*Fix: When deleting a hierarchy of GUI controls in the GUIEditor it will ask you if you want to save the changes on exit
 
<br>
 
<br>
  
Line 149: Line 159:
 
*"Bypass Distance" checkbox on Grass tab of terrain panel
 
*"Bypass Distance" checkbox on Grass tab of terrain panel
 
*Third party logos are now displayed on service directory login UI
 
*Third party logos are now displayed on service directory login UI
 +
<br>
 +
 +
=== Sapphire.j New Features ===
 +
*Random rotation/scale toggles on HeroBlade toolbar.  New instances added via Create menu, Assets panel, Library or cloning will have random rotation when these are enabled.  Ctrl+Shift+R will toggle them.  Ctrl+R with one or both of these enabled will apply random rotation/scale to any selected node
 +
*Organizer user interface supports multiselect drag & drop
 +
<br>
 +
 +
=== Sapphire.L New Features ===
 +
*User interface reskinning complete
 +
*New: Exposed 'Maximum Rebalancing Interval' setting to HSL to allow for custom laziness in the underlying SAS kd_tree implementation
 +
*New: Ribbon water can now be "closed" into a loop by bringing the endpoints close together.  The end with the larger, offset cue circle can be dragged to separate the ends again; the other end moves both points to deform the loop.
 
<br>
 
<br>
  
Line 159: Line 180:
 
<br>
 
<br>
  
=== Sapphire.e: Enhancements ===
+
=== Sapphire.e Enhancements ===
 
*HSE CTRL+F4 closes the active script
 
*HSE CTRL+F4 closes the active script
 
*HSE CTRL+SHIFT+F4 closes all scripts
 
*HSE CTRL+SHIFT+F4 closes all scripts
 
*HSE panel tabs are color coded based on their usage: GUIXML == green, Client == blue, Server == golden
 
*HSE panel tabs are color coded based on their usage: GUIXML == green, Client == blue, Server == golden
 
*slight performance increase in HDR due to changing technique from using string to handle
 
*slight performance increase in HDR due to changing technique from using string to handle
 +
<br>
 +
 +
=== Sapphire.j Enhancements ===
 +
*Updated HeroBlade UI colors and icons
 +
*Go To Selection (mouse4 or Ctrl+G), if it lands you below the selection, will move you above it when repeated.
 +
*Improved visual cues for currently selected terrain tool/falloff/shape
 +
*Terrain panel tools highlight the tabs associated with them, to make it clearer when they don't match (or when you're looking at, say, the Soften panel with the Flatten tool selected)
 +
<br>
 +
 +
=== Sapphire.L Enhancements ===
 +
*Improved: ribbon water's guidepoint "normals" (affects the curvature)
 +
*Improved: water rendering
 +
*Improved: reflection rendering
 +
*Change: Dynamic place tool ignores water surface unless Shift key is held
 +
*Change: MirrorNodes are never without a cube map when needed
 +
*Change: StageAutoZoom works on all layers, not just base and character
 
<br>
 
<br>
  
Line 183: Line 220:
 
<br>
 
<br>
  
=== Sapphire.a: Corrections ===
+
=== Sapphire.a Corrections ===
 
*fixed: Cloud rendering could leak system RAM and GPU RAM
 
*fixed: Cloud rendering could leak system RAM and GPU RAM
 
*fixed: miscellaneous crash reports
 
*fixed: miscellaneous crash reports
 
<br>
 
<br>
  
=== Sapphire.b: Corrections ===
+
=== Sapphire.b Corrections ===
 
*fix: Move Instance error caused by IsPlayerUsingEditClient in remote area script errors
 
*fix: Move Instance error caused by IsPlayerUsingEditClient in remote area script errors
 
*fix: Incorrect timeout message when logging in with invalid password
 
*fix: Incorrect timeout message when logging in with invalid password
 
<br>
 
<br>
  
=== Sapphire.c: Corrections ===
+
=== Sapphire.c Corrections ===
 
*fixed: Backface culling was set to NONE by dynamic sky rendering.  this could cause terrain or other objects to incorrectly render
 
*fixed: Backface culling was set to NONE by dynamic sky rendering.  this could cause terrain or other objects to incorrectly render
 
*fixed: LargeAddressAware flag is correctly set on all HeroBlades and player clients
 
*fixed: LargeAddressAware flag is correctly set on all HeroBlades and player clients
Line 200: Line 237:
 
<br>
 
<br>
  
=== Sapphire.d: Corrections ===
+
=== Sapphire.d Corrections ===
 
*fix: dream manager: drag & drop user causes crash by removing incorrect drag & drop functionality (1430)
 
*fix: dream manager: drag & drop user causes crash by removing incorrect drag & drop functionality (1430)
 
*fix: HSE task list not correctly marked as a tool window, which could cause it to behave incorrectly
 
*fix: HSE task list not correctly marked as a tool window, which could cause it to behave incorrectly
Line 228: Line 265:
 
*fix: HSE no longer throws exception when closed with floating scripts
 
*fix: HSE no longer throws exception when closed with floating scripts
 
*fix: HSE no longer throws exception due to closure dependency on tool panel
 
*fix: HSE no longer throws exception due to closure dependency on tool panel
 +
<br>
 +
 +
=== Sapphire.f Corrections ===
 +
*fix: HSE "Highlighting style editor" is only enabled if you have a script, etc open
 +
*fix: you can no longer resize a panel container beyond the size of the parent workspace
 +
*fix: issue resizing around the HeroBlade viewport
 +
*fix: correctly opens log file when OS username includes Unicode characters
 +
*fix: a rare crash in Heroscript editor
 +
*fix: import oddities related to the importers best guess at import format when .raw files are specified
 +
*fix: normal rendering with skydomes
 +
<br>
 +
 +
=== Sapphire.g Corrections ===
 +
*fix: validate HeroBlade window position and size vs monitor on load. this fixes an issue with the window being offscreen or incorrectly sized due to weird state information on exit
 +
*fix: HeroBlade window now records what monitor it was on in order to correctly restore the window
 +
*fix: NULL pointer crash if HDR shader doesn’t load correctly due to lack of GPU support (2105)
 +
*fix: potential d3dx effect loading crash if the effect was loaded at a memory address > 2 GB
 +
*fix: memory leak in GUI font system handling.  this also fixes performance issue as a side-effect
 +
*fix: potential font size scaling issue when the destination is too small for the font size
 +
*fix: vertex buffers, &c with incorrect usage could cause performance problem
 +
*fix: some panels would be cutoff without vertical scrollbars if they were taller than the HeroBlade window
 +
*fix: shadow map rendering no longer force-adjusts SpeedTree LODs to high detail
 +
*fix: some soften brush issues at edges of heightmaps
 +
*fix: fixed "puckering" effect that happened at heightmap edges with push/pull tool
 +
*fix: improved terrain stitching precision
 +
*fix: fixed normal rendering with skydomes
 +
*fix: fixed some cases where ComputeNormal needs a value immediately instead of deferred
 +
<br>
 +
 +
=== Sapphire.h Corrections ===
 +
*fix: several issues with creating or opening local SQLite LRC file when the user has non-UTF8 mappable glyphs in their Windows username
 +
*fix: issues in opening log files in client and from HSL when user has non-UTF8 mappable glyphs in their Windows username
 +
*fix: ZBuffer wasn’t set to appropriate non-MSAA format during HDR processing which could cause artifacts / failure on some GPUs if MSAA was enabled
 +
*fixed: ALT key was incorrectly discarded when viewport had focus
 +
*fix: minimap resets properly when device resets.
 +
*fix: callbacks for various resources which arrive from the Repository while the client is minimized are deferred until after the client has restored, in order to prevent DirectX errors
 +
*fix: crash 2264 & character shadow blobs while minimized
 +
*fix: Various NXU_ScaledCopy crashes.
 +
*fix: Various other crash / exception related issues
 +
*fix: safety check for 0 vertices/indices in a speedtree render group (unlikely)
 +
*fix: crash when removing a heightmap billboard layer while editing that layer (2094 possibly)
 +
*fix: additional safety checks for cloud rendering (2064)
 +
*fix: removed obsolete Bloom section on Atmosphere tab of Environment panel
 +
*fix: Environment effects triggers and blends UI hierarchy simplified, fixed autoscroll settings
 +
*fix: SliderGroups would sometimes hide themselves for no good reason
 +
*fixed: an error in HDRGlareType parsing with Cheap_Lens
 +
*fix: GetPlayerAccountName() external function to properly return the AccountHash instead of the login name.
 +
*Fixed: terrain seam/neighbor issues.
 +
*Fixed: spikes created by push/pull filter.
 +
*change: float parameters now show "0" instead of "" in the property sheet when their pointers are null
 +
*fixed: TextureNumber UI issues
 +
<br>
 +
 +
=== Sapphire.i Corrections ===
 +
*fix: Algorithm used to find neighboring Heightmaps has been adjusted to resolve an issue where adjacent Heightmaps would not be aware of each other causing some terrain editing tools to produce gaps or fail to work at the edges.
 +
*fix: Enhanced text tooltips for the Parenting buttons on the toolbar in an effort to make their usage more clear
 +
*fix: Improved messaging for the PrintOutEffects debug switch
 +
*fix: Asset-populated menus in the Create menu are sorted alphabetically
 +
*fix: Added "single sample" support to the Guassian types for particle's UniformScale3d and Size2d properties.  When set the Guassian value will only be calculated once during instantiation, otherwise it is recalculated each frame.
 +
*fix: Particle editor's panel UI for TextureNumber adjusted to improve usability
 +
<br>
 +
 +
=== Sapphire.j Corrections ===
 +
*fix: Area org "Add Existing Area" popup does not duplicate entries
 +
*fix: exception in HeroClass::addAdditionalClass is now caught on the client, to prevent a source of mysterious CTDs that don't provide any clues
 +
*fix: no more annoying and pointless exception in Dream Manager
 +
*fix: SpeedTree LODs corrected to use world space positioning when parented to other objects.  This resolves an issue where the LOD would be incorrectly rendered based on parenting offset.
 +
*fix: SpeedTrees now correctly render in the minimap
 +
*fix: terrain Raise/Lower Tool no longer creates ridge between intersection of heightmaps
 +
*fix: environment panel:  read-only mode does not disable skydome UI because that belongs to the area, not the scheme
 +
*fix: environment panel: toggling dynamic sky no longer resets blend weight to 0
 +
*fix: interaction of Dynamic Place tool with Snap To Grid works as expected
 +
*fix: crash during mousedrag in terrain neighbor list calculation if a node is deleted at the same time
 +
*fix: bug 2391.  Removed useless Glow property from particles which could under some circumstances crash the client.
 +
*fix: when removing an environment scheme, any rooms which used that scheme are automatically set to "Area" to prevent errors
 +
*fix: organizer-related crash when switching to GUIXMLOrganizer panel immediately after login
 +
*fix: under Windows XP Screen...DeviceName returns random garbage.  This is a known Microsoft problem, and they will not fix.  Added exception handler so we don't crash out
 +
*fix: Added exception handling to address a known Microsoft Windows XP issue, where interogating the DeviceName can return random garbage to the requesting application
 +
*fix: Adjusted area organizer CLI commands to restrict access to those that make changes to the organizer structure to users authorized to make DOM changes.
 +
*fix: Area server will ignore all incoming messages on the edit channel if the connected user does not have the authorization to edit areas.
 +
*fix: Gui editor and Animation Panels honor permissions
 +
*fix: Terrain findneighbor tweaks
 +
*fix: Post instantiation of the player connection node, the account_name GOM field is now correctly set to the AccountHash instead of the PlayerLoginName.
 +
*fix:  various usability issues with Push/Pull filter
 +
*fix: fixed a rare crash during device loss event
 +
*fix: added a safety check for bone indicies out of range due to an update of a character skeleton currently in use
 +
*fix: a crash related to adding an animation note ability to a sequence
 +
<br>
 +
 +
=== Sapphire.k Corrections ===
 +
*fix: terrain panel "autoscroll too automatic" issue where selecting one of the tabs on the terrain panel (or things inside the tab container) would result in scrolling to the bottom of the active panel
 +
*fix: Heightmap neighbor code tweaked to address issues where sometimes a heightmap instance would not be found in the neighbors list for one or more adjacent neighbors
 +
<br>
 +
 +
=== Sapphire.L Corrections ===
 +
*fix: direct repository server connections now honor authorizations affecting GUI editor and Animation Panel submissions
 +
*fix: GetNodeBoundingBox() and GetNodeBoundingVolume() HSL functions now take scale into account
 +
*fix: resolved an error related to skydomes/boxes in seamlessly connected areas where an incoming edit message for the skydome/box would error
 +
*fix: implemented custom scrollbars on terrain panel to prevent auto-scrolling usability issues
 +
*fix: "Room wants to load Enviroscheme" console spam now actually does create the required default scene instead of saying it will.  This eliminates the console spam as the issue resolves itself correctly.
 +
*fix: GetNodeUnderMouse() which would fail to find the correct node when the camera was offset
 +
*fix: the GUI Editor and Animation panel will respect permission settings
 +
*fix: prevented unnecessary recalculation of scaled convex meshes when a static object moves
 +
*fix: fixed crashes, skeletal corruption, and animation failure after character skeleton files are updated
 +
*fix: fixed an issue where seamlessly linked areas did not render if removed and re-added
 +
*fix: Made it possible to create a link to an area the client has not yet loaded.  Added a "Find" button to the seamless panel to autoselect an instance in the selected area and pan the camera toward it
 +
*fixed: crash saving UI layout in Windows XP - although it removes the ability to remember multiple monitor setups on Windows XP only (this is due to known, documented defects as Microsoft no longer supports Windows XP)
 +
*Fix: potential crash when enabling shadows with dynamic sky on
 +
*Added: error message when attempting to use rigid meshes as character parts
 +
*Removed: various log spam
 +
*Fixed: conflict between HDR and reflective water
 +
*Fix: Path Planning panel will respect permissions
 +
*Removed: Debug Settings / Debug Variables forms
 +
*Fix: HSL println no longer appears in error window
 +
*Fix to spatial awareness system inverse-awareness event notifications.
 +
*Fixed: Create menu crash when adding assets that have the same name from different file paths.
 +
*Fixed: "Remove" button for terrain textures now updates enabled state when texture painting to prevent inappropriate removal
 +
*fixed: Deleting GMNote vectors with the HSL function 'DeleteSelectedHeroicVectorDrawingLine' can be undone
 +
*changing areas non-seamlessly will re-enable Auto Room Select
 +
*Organizer panel drag & drop now scrolls up or down if dragged to the top or bottom of the control
 +
*Fixed terrain tool panel auto-popup to respect tab group settings.  Updated several panels to respect tab group settings.
 +
*Fixed rendering issue with ActionMarks when HDR and hair shader were active.  Also pulled gizmo rendering outside of post processing.
 +
*When using GoToSelection (Ctrl+G or mouse button 4) when there are no selectable nodes available, it attempts to focus the camera on an unselectable node.
 +
*Fixed ScissorRect issue on omni lights with SetCameraHorizontalOffset
 +
*Fixed triangle winding of reflected SpeedTrees
 +
*Undoing deletion of ribbon water restores the ribbon shape
 +
*Adding a new area in the organizer automatically puts it in the selected folder
 +
*Fixed a physx visualization crash
 +
*Fixed gizmo arrowhead rendering issues
 +
*Fixed a bug that could prevent new area creation
 +
*Asset panel refreshes when selected to help prevent blanks
 +
*Skydome assets do not appear in asset UI (unless there already happens to be an instance of that asset in a room, which is unlikely and probably user error)
 +
*Fixed auto-selection of newly created instances
 +
*Fixed bug when reverse replicating a field which is a class with subfields
 +
*Fix: Logging in with a second HeroBlade will disconnect the first HeroBlade
 +
*Fix: HSL functions SetLogStatus and GetLogStatus now chat that they are deprecated instead of being silent about it
 +
*Fix: invalid camera flag was causing incorrect z near / far calculation and clip plane calculation
 +
*Fix for a crash on skeleton update
 +
<br>
 +
 +
=== Sapphire.m Corrections ===
 +
*fix: Corrected issue with dynamic detail rendering and camera position.
 +
*fix: The water environment scheme is correctly genereated if a mirror node is present.
 +
*fix: Panels could be incorrectly combined during loading.
 +
*fix: GetNodeMaterialList() will no longer crash when called with invalid node.
 +
*fix: Pathing should not early-out at short distances when simple direct test fails.
 +
*fix: Fixed overlap at the bottom of the file transfers window in Repository Browser.
 +
*fix: Triggers + seamless transitions no longer cause false positives.
 +
*fix: Heightmaps snap to the default resolution grid rather than their own resolution.
 +
*fix: Stopped VirtualStage crash while minimized.
 +
*fix: Stopped a crash when rendering asset library tabs.
 +
*fix: Added a check to prevent a crash with remote methods in HSL.
 +
*fix: The history panel now correctly clears itself when the last script is closed.
 +
*fix: The look at command(CTRL+G) correctly takes the seamless offset in to account when attempting to pan to a node.
 +
*fix: Corrected issues with stitching between heightmap nodes of different resolutions.
 
<br>
 
<br>
  
Line 246: Line 438:
 
<br>  
 
<br>  
  
== Client Tools ==
+
== Repository Browser ==
  
<br>  
+
<br>
  
 
=== New Features  ===
 
=== New Features  ===
Line 254: Line 446:
 
<br>  
 
<br>  
  
=== Enhancements  ===
+
=== Sapphire.L New Features ===
 
+
*User interface reskinning complete
 
<br>  
 
<br>  
  
Line 264: Line 456:
 
*Fix: dragging and dropping a directory structure into the repo does not prompt to replace / update existing file(s)
 
*Fix: dragging and dropping a directory structure into the repo does not prompt to replace / update existing file(s)
 
*Fix: UI "forgets" about all the undeleted sub-dirs that still exist when a sibling is deleted
 
*Fix: UI "forgets" about all the undeleted sub-dirs that still exist when a sibling is deleted
 +
<br>
 +
 +
=== Sapphire.L Corrections ===
 +
*Fix: potential crash connecting again to same repo
 +
*Fix: potential crash possible when performing a synchronize with a repo (case 2619)
 +
*Fix: potential crash due to a race condition on startup (case 2484)
 
<br>
 
<br>
  

Latest revision as of 14:58, 27 March 2014


Contents

Release: HeroEngine 2

Codename: Sapphire

Internal Branch Version Base: 2.0

Release Dates: November 2012 - February 2014


Notes

This release requires client graphics device support for Direct3D Shader Model (SM) 3.0 or higher.


Major Feature Summary

The following is a list of major features expected to be included in this release and is not a guarantee of the availability of the feature in the final release.

Middleware


Graphics


Client / Editor / Server / Tools


Scripting


Obtaining the Release


HSL and Foundation Framework

Behavior Changes


New Features


Enhancements & Corrections


January 2013 Enhancements & Corrections


Deprecated Functionality


HeroBlade Editor and Client

New Features


Sapphire.j New Features


Sapphire.L New Features


Enhancements


Sapphire.e Enhancements


Sapphire.j Enhancements


Sapphire.L Enhancements


Corrections


Sapphire.a Corrections


Sapphire.b Corrections


Sapphire.c Corrections


Sapphire.d Corrections


Sapphire.e Corrections


Sapphire.f Corrections


Sapphire.g Corrections


Sapphire.h Corrections


Sapphire.i Corrections


Sapphire.j Corrections


Sapphire.k Corrections


Sapphire.L Corrections


Sapphire.m Corrections


Player Client

This section includes Player Client specific changes.  General client changes are listed above under HeroBlade

New Features


Enhancements


Corrections


Repository Browser


New Features


Sapphire.L New Features


Corrections


Sapphire.L Corrections


Server Processes


New Features


Enhancements


Corrections


Sapphire.d: Corrections


Server Tools


New Features


Enhancements


Corrections


Source and Object Notes


Database


Personal tools
Namespaces
Variants
Actions
Navigation
Toolbox