Full 3D Engine v2.4 Tech Demo

remixed by chooper100
  scripts
  sprites
See inside
Instructions

Controls:
WASD..............Move player
Arrow keys.......Rotate camera
Space..............Jump
E.....................Open / close door (must be near to the door)
Shift................Crouch
M....................Toggle mouse controls
O....................Show options
P.....................Pause
F.....................Toggle FPS Counter

Notes and Credits (added by chooper100)

IF YOU ARE EXPERIENCING LAG:
Press O and turn shadows off. If that doesn't work, you can try decreasing the resolution or even going into wireframe mode.

~

Hi everyone, this is my new full 3D engine!
We are no longer limited by having no floors, ceilings or walls with different heights, allowing for much more interesting projects. :D

Credits:
- @WO997 and @DadOfMrLog for loads of help!
- @DadOfMrLog for all the triangle drawing scripts: https://scratch.mit.edu/projects/55619918/
https://scratch.mit.edu/projects/61122192/ and
https://scratch.mit.edu/projects/25071751/
- In addition @DadOfMrLog for the sort algorithm:
https://scratch.mit.edu/projects/48447854/
- soundsnap.com and freesound.org for the footstep sounds
- soundbible.com for the door close sound
- soundjay.com for the door open sound
- https://soundcloud.com/ugotsta/sets/ambience/ (Bay of Hope) for ambient music

Explanations of 3D:
- goo [dot] gl/aS04Uo2 (introductory youtube video series)
- scratchapixel.com (advanced)

UPDATE LOG:
v2.4: (30 October 2016)
- Lots of useful internal additions
- Custom properties for objects
- Automatically clear temp data
- Optimisations to lines

v2.2: (8 September 2016)
- Bug fixes for OBJ files

v2.1: (6 September 2016)
- Added max draw distance setting (disabled by default)
- Added spherical collisions
- Turn off shadows per object
- General touch ups (see forum for more)

v2.4: (30 October 2016)
- Internal feature additions to help developers
- Optimisations to lines
- General bug fixes

v2.0: (6 September 2016)
- Added radio to the table
- Major optimisations
- Import OBJ files for easy object creation
- Added sound engine: (Thanks to @Liam48D and @Trackmaniadude for the ideas)
---> Play a sound once from a given 3D point
---> Play repeated ambient sounds from an object
---> Max 300 ambient sounds at once
- Fixed lines when viewed up close
- Changed sort algorithm to @TheLogFather's in-place sort (link above)
- Updated objects documentation to match all changes (now shared on Google Drive)
- New render setting to toggle triangle optimisations
- Changed control display to WASD rather than WSAD (Thanks to @Trackmaniadude for noticing that!)
- Smooth transition from loading screen
- Fixes to loading

v1.9: (2 September 2016)
- Added steps at the back of the house
- Added line shadows
- Updated physics engine (can now walk up ramps)
- Added sounds to textures - thanks to @Liam48D for the inspiration!

v1.8: (31 August 2016)
- Added collisions to trees and table legs
- Added pausing
- Revamped collision system:
---> Rotated collision boxes :D
---> Auto-add padding to collisions
---> Automatically generate collisions for objects
- Objects can now be hidden
- Added display for mouse controls
- Fixes to loading system
- Lines now have near z clipping
- You can no longer jump whilst crouching
- Minor internal changes to rendering

v1.8-b: (28 August 2016)
- Added table and trees to demo
- New "line" surface
- Updated physics engine
- Added initial display of controls (dismissed by moving around)
- If you get trapped in the door and jump, you no longer get transported to the top of the door (thanks @SOAP_Industries for spotting that!)
- Footstep sound when landing (thanks @liam48D for the idea)
- Optimisations to spheres
- BREAKING CHANGE: The "System: Tick" and "System: Tick Done" broadcasts have now been renamed to "System: Physics Tick" and "System: Render Tick"

v1.6: (24 August 2016)
- Lineframe mode
- Added ambient lighting to spheres
- Optimisations to spheres
- You can no longer teleport to the tops of walls (thanks @DragonDesigns for pointing that out!)
- Added terminal velocity
- Fixed glitch where you could fall through the ground
- You can no longer look through walls when up close

v1.6-b: (24 August 2016)
- Added spheres! :D (Check out the new doorknob)
- Improved physics engine - you can now land on top of objects other than the ground ;)
- Press M to toggle mouse controls
- Fixes to loading system
- Renamed "Update Points" variable to "Update Needed"
- Changes to objects are now updated in the same frame

v1.4: (22 August 2016)
- Smooth transition to crouch mode
- Crouch now uses the shift key
- Made running faster and crouch slower
- Updated some documentation

v1.3: (22 August 2016)
- Optimisations
- Fixed glitch where you can walk through walls
- When crouched the player moves slower
- Your chosen controls no longer reset with the green flag

v1.2: (21 August 2016)
- Optimisations
- Added alternate mouse control system
- Experimental crouching
- Changed key to display FPS to F
- Moved options dialog to it's own sprite
- Rewrote render settings sprite to be more intuitive
- Fixed glass for highest resolution

v1.0: (18 August 2016)
- Original release

For a notification every time there is an update, follow this forum:
https://scratch.mit.edu/discuss/topic/214038

Shared: 18 Aug 2016 Modified: 16 Jun 2017
Favorite this project 1249
Love this project 1417
Total views 17928
View the remix tree  214
  
More projects by chooper100