Benevento, Italy - We are very proud to announce that the S2ENGINE HD 2019.1 version is now OUT on STEAM:Store.steampowered.com
This version performs a lot of improvements and new features.
The main changes are listed below:
Simply the core feature of this update.
We have worked about 2 months on Recast/Detour navigation system integration.
Currently the s2engine implementation has following features:
- Navigation areas: areas with different costs and flags
- Tiles: Navigation mesh is divided in tiles so it can be applied also on big scenes like terrains
- Off Mesh Links: there is the possibility to connect two different areas, or two different parts of the same navigation mesh tha aren't directly connected
- Distributed building: navigation meshes are built is a frame-ditributed way so u can continue to edit while navigation mesh is updating. Navigation meshes are extended for the whole scene BUIT they affect only the part of the scene that are in areas.
- More than one navigation mesh: Every navigation mesh support agents with a single given dimension, so agents with different dimensions need different navigation meshes. In 2019.1 you can create more then one navigation mesh and, with a simple tool, you can visualize one navigation mesh at time.
This is a real boost expecially into indoor environments where you would be able to insert many lights casting shadows.
In 2018.1 placing more than 2 lights casting shadows in an indoor environemt is almost prohibitive, expecially if they are omnidirectional lights (no spot).
Practically every object inside lights range is rendered into the shadowmap everyframe (1 time for spot lights, up to 6 times for omni lights!!), dropping down the framerate:
Shadowmap cache just avoids this, it stores the rendered shadowmaps and reuse them until all objects in lights range remain stationary, otherwise shadowmaps are generated again.
S2Engine uses a 2-level shadowmap cache system that speed-up the shadowmap re-generation updating only objects that moves.
Some research has been made for improving the transfer of data from CPU to GPU.
In 2019.1 version the submission of drawcalls to the GPU has been improved expecially on Radeon cards.
There are also minor improvements and new features like:
- Rain blocker volumes (for blocking rain inside interiors)
- Terrain tiles Add/Remove
- Improved RGBs decoding
- Mip-mapped compressed STX texture synchronization up to 10x faster
- Area (sphere and tube) lights
- Improved alpha lod dithering
- Render quality configuration presets (from ultra high to ultra low)
Also many bugfixes has been made. The most important regard:
- Frame stuttering,
- Gamemachine state synchronization,
- Texture importing
- Sound sources
Following is the complete list of release notes:
- [BUG FIXED] Crash when resetting the collision mesh of an object into prefab editor
- [BUG FIXED] In some cases No skin mesh imported from FBX file when CollapseFBX option is checked
- [BUG FIXED] When blending animations between 2 states in a GameMachine for the first time, the animations aren't blended in right way
- [BUG FIXED] When adding a single type animation to an animation list in Model editor the speed of the animation in modelviewport isn't set in right way
- [BUG FIXED] Crash if you add a new animation without first inserting a name for it
- [BUG FIXED] If you close the modelviewport and, in model editor tool, add a new single animation BUT you don't assign any source anim, then if you select the added animation and open the modelviewport the animation isn't played and model disappears.
- [NEW] Now, when you add a new animation in model tool, the latest added animation is automatically selected.
- [BUG FIXED] When you click on the name of a variable into the lists of vars tab FSM tool, the variable is deleted.
- [NEW] Added "StartDebug" menu option (F6 the shortcut) for starting the game simulation with debug Draw mode enabled
- [IMPROVEMENT] Skinned models capsule for ragdolls now are independent from nodes scaling (this removes the limitation to models with no scaled nodes for using ragdolls)
- [NEW] Added new "Wait" action, for states synchronization, in GameMachine
- [NEW] Added possibility to set variable for "maxLinearAcc" parameter of "AISetCharacterMaxSpeed" Action
- [NEW] Added possibility to set variable for "maxAngularAcc" parameter of "AISetCharacterMaxSpeed" Action
- [NEW] Added possibility to set variable for "maxLinearSpeed" parameter of "AISetCharacterMaxSpeed" Action
- [NEW] Added possibility to set variable for "maxAngularSpeed" parameter of "AISetCharacterMaxSpeed" Action
- [BUG FIXED] When copy model joints/capsules data (from model tool in physics tab) capsules orientation isn't copied
- [BUG FIXED] When selecting objects from Objects tool tab using the SHIFT+LeftMouseButton combination, the first and last selections are duplicated.
- [NEW] Now AI areas (forbiddenArea, WaypointArea and new NavigationArea) can be closed, during creation phase, not only by overlapping first and last point BUT also by clicking right mouse button
- [IMPROVEMENT] Removed diffuse color banding artifacts in dark tones
- [NEW] Added StartFullscreen editor option for starting game simulation in fullscreen mode
- [IMPROVEMENT] Now when you collapse a parameters section in Class and Prefab tools and then update the object or change a parameter the section state (collapsed/expanded) is kept
- [IMPROVEMENT] Now when resizing the scene, model and prefab viewports, toolbar icons do not overlap
- [BUG FIXED] Crash when clicking on "Compressed" checkbox into Texture tool and no texture is selected
- [BUG FIXED] Crash when clicking on "IsNormalmap" checkbox into Texture tool and no texture is selected
- [NEW] Terrain elevate / smooth / step / ramp tools has been grouped in a single tool called "sculpt"
- [NEW] A new Terrain tool, called "edit tiles" has been added for adding / removing tiles from the terrain
- [BUG FIXED] When renaming an asset, if it has a reference into prefabs, it is not updated into the prefab files and in Prefab tool
- [BUG FIXED] When renaming a GMS asset and it is referenced by an object just existing into the scene, if you delete the object and then re-insert into the scene the object prefab, engine crashes.
- [NEW] Added "MoveTo" option in the project browser for moving file from a folder to another.
- [BUG FIXED] When importing an asset package into a project STX textures of the package aren't added to the project.
- [IMPROVEMENT] When you try to paint on a material without a mask now a warning message is displayed.
- [BUG FIXED] If the filename of a texture to import contains dots other then the one for separating the file extension, the texture isn't imported
- [IMPROVEMENT] Added support for variable in targetDistance,displaceX,displaceY,targetPitch parameters of Orbit Action
- [NEW] Added support for rain blocking volumes (useful for avoiding indoor rain)
- [IMPROVEMENT] Now while you are connecting two states you can scroll the FSM viewport
- [NEW] Added "Lock" button to some vector3d and vector2d parameters, such as object scale and UV tiling (for locking coordinate values).
- [IMPROVEMENT] Now Scaling by gizmo is better calibrated and more usable
- [IMPROVEMENT] Now Scaling and Translate gizmo become completely yellow when mouse cursor is on selected object for applying transforms to all 3 axis.
- [IMPROVEMENT] Now when you insert a prefab with one or more hierarchies into the scene, only the root objects of the hierarchies are selected.
- [NEW] Added the possibility to select every object inside a hierarchy, after selecting one object of the hierarchy, by using up and down arrow keys.
- [BUG FIXED] Cannot release a layer mask from a material
- [BUG FIXED] Non-power-Of-Two RGB textures aren't loaded well and, in the worst case, can cause system to crash.
- [NEW] Added Render->Buffers->Albedo option into Editor main menu
- [NEW] Added Render->Buffers->Normal option into Editor main menu
- [NEW] Added BoxVolume object class
- [NEW] Added ShadowMap cache system
- [IMPROVEMENT] Values of MacroGloss parameter of a material into Material properties tab now are inverted
- [NEW] Added parameter LayerMask to SendMessageInRange Action
- [NEW] Added parameter LayerMask to SendEventInRange Action
- [NEW] Added parameter LayerMask to SendEventBroad Action
- [IMPROVEMENT] 10x faster mip-mapped STX texture synchronization when compressed
- [NEW] Added "Rough Brightness" parameter into texture editor
- [NEW] Added "Alpha Contrast" and "Alpha Brightness" parameters into texture editor
- [IMPROVEMENT] Improved Spolight cone fallof
- [NEW] Parameter "fallof" replaced with "InnerFov" paramneter in lights that must be used only when light is a SPOTLIGHT.
- [IMPROVEMENT] Improved light attenuation
- [BUG FIXED] A sound source cannot be paused
- [NEW] Now ShowSwitch can also pause and resume sounbd sources of target objects.
- [IMPROVEMENT] Increased the number of lights per primitive for Transparent surfaces
- [NEW] Added button "AttachTo" to HierarchyFrame that lets you to Attach an object to another object by picking the second object from scene or selecting the object from hierarchy frame.
- [NEW] Added Sphere and tube Area Lights
- [IMPROVEMENT] Sun light now has an area
- [NEW] Added possibility to set parameter "smooth" with a variable into following GameMachine actions: SetObjectLocalPos, SetCameraFov, Orbit, SetOrientationFromCamera, LookAt, NodeLookAt, SetObjectLocalOrientation, SetOrientationFromObject, SetPositionFromObject, Align
- [NEW] Added Render->Debug->LightsOverlap option into Editor main menu, for checking how many lights overlap
- [NEW] Added support for navigation meshes
- [NEW] Added parameters "NotFoundEvent" and "delay" to AIFindPath action
- [NEW] Added parameters "NotFoundEvent" and "delay" to AIGetFurthestCoverPoint, AIGetFurthestTacticalPoint, AIGetNearestAllowedPoint, AIGetNearestCoverPoint, AIGetNearestTacticalPoint actions
- [NEW] Added possibility to set custom splashscreen during deployed game runtime startup. The custom splashscreen is easly set from the publish dialog.
- [NEW] Added configuration presets for rendering quality specs: Ultra low, very Low, low, medium, high, very high, ultra high.
- [IMPROVEMENT] Improved lod alpha transition dithering (now it uses ordered dithering)
- [NEW] Added new S2Script function KinematiocMove()
- [NEW] Added to GameMachine SpawnObjects action output parameter that keeps list of spawned objects names.
- [NEW] Added possibility to use a variable for the parameter "value" into the GetObjectParam gameMachine action.
- [BUG FIXED] GameMachine State containing only "one-time" actions isn't executed if it started by a FINISHED event from previous state and expects a "FINISHED" event to pass to another state.
- [BUG FIXED] When loading a new level by using "LoadLevel" gameMachine action or "LoadLevel" script function the loaded level framerate is not well synchronized (frame stuttering).
About S2ENGINE HD
S2 ENGINE HD is a complete general-purpose software kit for developing and running videogames and other virtual-reality applications, specifically dedicated to PC indie developers from an indie developer. Its simplicity and a powerful, just-ready, all-in-one toolset lets indies – and game enthusiasts – turn on their computers and create amazing visuals in minutes just as if they were professionals. Developing games is as fun as playing them using S2 ENGINE HD!
About Profenix Studio SRLS
Profenix Studio SRLS is an indie company based in Benevento, Italy.
It is born from the individual company “Profenix Studio di Fabio Di Paola” based in Naples.
Since its foundation, in 2006, Profenix Studio has been greatly involved into next-generation PC gaming technology development. Profenix Studio technology has powered original brand games like “Power Of Destruction“, ”I’m not alone” and recently “BlackSoul” released on Steam.
Through S2 ENGINE HD, the new powerful game engine, Profenix Studio aims to become avaluable reference point for indie game developers in the world.
Form an Indie to indies,
Make your game, Play your game
For more information about S2ENGINE HD and Profenix Studio SRLS,
go to www.s2powered.com
or please contact us via mail at firstname.lastname@example.org