October 17 2015 build

From Skyscraper
Jump to: navigation, search
This is the article of a development build of Skyscraper Simulator.
It has been confirmed a good-faith contribution to the Skyscraper wiki.

This build fixes a major issue with camera movement, which involved the framerate-adjustment (delta) value being doubled, causing jerky movement. On the Mac Mini build system I have (for the Mac builds), the camera was prominently jerky when moving, but after the fix, it was very smooth. That was a problem for a long time, which I had spent lots of hours trying to diagnose, but had never found the reason. It ended up being something very simple. Update on this: one thing to be aware of, is that there's still been a frame skipping issue, and some systems have this issue. On the Windows system I've tested with, full-screen mode has this problem, but windowed mode appears to be completely smooth. This is a separate issue, and on Windows, OpenGL appears to run more smoothly than DirectX (at least on my machine). Tell me how your system behaves with this build.

Some of the other things are the addition of Freight Elevator 1 in the Sears Tower model and some shaft adjustments, a fix for a crash in the elevator's DumpQueue code which caused crashes in the elevator editor when listing the down queue, a fix for an issue where an elevator on the alternate recall floor would not recall to the standard recall floor in Fire Service Phase 1, the movement of the SBS engine code and frontend code into their own C++ namespaces which fixes naming conflicts, code simplifications and cleanups, a fix where objects (such as elevators) when rotated would not update positions of child objects resulting in them not being clickable (more info after this paragraph), a fix to prevent the model physics gravity from turning off if the camera's gravity is turned off, and more. See the changelog below for more info.

In the first recent build (the September 18th build), the new object movement/positioning system made it possible for child objects to move and rotate along with their parent objects, such as panels and buttons inside of an elevator rotating along with the elevator. This wasn't possible in Alpha 9 and earlier. The rotation fix in this build, now makes it possible for the child objects to work, when rotating their parent, such as an elevator's buttons to work when rotating the elevator.

See the previous build for more info on recent changes:
http://forum.skyscrapersim.com/index.php?topic=6889.0


Changelog:
-functions that create new sim objects should return full type, instead of just a generic object
-removed unnecessary conversion in Freelook mode code
-have camera only disable camera gravity value, instead of physics gravity also
-camera delta values were being used twice causing erratic movement behavior when using Bullet. Have Bullet use a single variable timestep, to prevent movement skipping issues
-simplified camera movement code
-camera movement vector needs to be flipped on X axis if Bullet is disabled
-object OnMove and OnRotate functions now have a "parent" flag, to determine if a parent object called the update
-rotations should update collider position also - this fixes an issue where parent objects would rotate, and child colliders would not be updated with the new derived position
-make sure Ogre log manager has been created before trying to call it
-simplified use of frontend and SBS singleton variables
-moved frontend into "Skyscraper" namespace
-return type fix for OnRecallFloor() function
-WallPolygon class has been renamed Polygon
-cleanups and initialization fixes
-moved SBS system into it's own namespace
-(Sears Tower) added Freight Elevator 1, along with minor wall fixes
-(Sears Tower) split off upper service elevator into separate shaft, and fixed positioning of shafts 29, 30 and the new 32
-(Sears Tower) adjustments to shaft starting/ending levels
-updated Codeblocks project
-moved elevator recall floor check into separate function, and added a check for the "recall unavailable" flag - this fixes an issue where an elevator on the alternate recall floor would not recall to the standard recall floor along with other elevators
-fixed crash in elevator's DumpQueues function, due to wrong queue being used for Down Queue info
-moved direction status variable to SetLights function in both callbutton and directional indicator objects
-call buttons need to set all lights in group for each light change - this fixes an issue where a call button light would be switched off later due to elevators rejecting the call, but other lights in the group would remain on
-added escalator textures from EG881's Escalator2011 package

See Also