* Added fog bulbs
* WIP raymarch
* constant fog formula with simplex noise
* Improved fog formula and handling
* Raymarch less expansive;
Added fog bulbs to sprites;
Removed premultiplication of fog density by color at load time;
* Avoid raymarch if fog > 1
* Sorting fog bulbs front to back;
Performance improvements;
* Added frustum culling for fog bulbs
* Tryiing without raymarch
* Refactored fog code;
Added noise and wibble to fog;
Fixed sprites;
* Disabled wibble for fog
* Removed noise
* Fof bulbs like TR5
* Fixed Pascal Case in RenderView;
Fixed formatting things;
Fixed sprites;
* Optimizations
* Fixed sprites in fog bulbs
* Fixed project paths
* Fix compiler warning
* Fixed repository
* Fog bulbs for sky and horizon
* Sky tessellation
* Update Renderer11Draw.cpp
---------
Co-authored-by: MontyTRC89 <montyhammet@hotmail.it>
Co-authored-by: Raildex <n@a.com>
Co-authored-by: Lwmte <3331699+Lwmte@users.noreply.github.com>
* start reorganize
* progress
* address some of @Lwmte suggestions
* Move setup.cpp to Game folder and capitalize it
* Include corrections
* include the new Setup.cpp in vcxproj
---------
Co-authored-by: Lwmte <3331699+Lwmte@users.noreply.github.com>
Co-authored-by: Sezz <sezzary@outlook.com>
* New rooms collector
* Fixed bugs in rooms collector;
Added caching of transformed portals vertices;
* Added more optimizations
* Fixed a bug in room collector;
Restored build configurations;
* Added static meshes caching;
Improved rooms collector;
Added statistics for rooms collector;
* Added ControlPhase time
* Corrected sme typos
* Moved scissor rectangle calculation away from draw routines
* Added cache invalidation
* test
* Normalize camera to door vector
* Added test code from OL;
* Excluded dot = 0 from doors processing; Increades stack overflow guard limit to 128; Removed test code;
* Optimized drawing of additive sprites
* Increased sprites instances count to 512 per bucket; Index UV array in shader by index instead of branching;
* Cleanded sprites shaders;
Optimized alpha blended sprites;
* Added Width and Height fields to Texture2D;
Restored underwater caustics;
* Restored bars drawing;
* Restored drawing of overlays
* Fixed fit code in DrawFullScreenSprite()
* Upgraded to DXTK 2019;
Implemented DDS loading;
* Upgraded DXTK to 2019
* Allow loading of both DDS and PNG textures
* Temporarly disabled shininess in inventory
* good progression
* Optimized alpha blended faces;
Fixed bug with floating statics alpha blended polygons;
Fixed gunshells when alpha blended faces are present on screen;
Restored debug stats also for release mode;
* update
* progression on the boat effect
* code cleaning
* formatting
* Fixed GPU states in alpha blend pass;
* added 3 useable streamers. left-right-center
* working code but without any formatting
* Some names refactoring;
* Renamed AddSprite3D to AddQuad;
Added overload to AddQuad for setting individual colors to each quad vertex;
* only test
* added waves to other vehicles
* add mist to speedboat and rubber boat
* WIP statics instancing
* Refactored constant buffers;
Restored gunflashes;
WIP dynamic lights for instanced statics;
* Polished instancing code
* Code fixes
* Changed grouping of instanced statics using std::map;
Improved instancing;
* Fixed lighting for instanced statics
* Draw gunshells with instancing
* Changed caustics frame index if out of range
* Removed not needed and repeated calculation of room's distance in rooms collector
* Avoid doing dot product if already was tested that door can't be seend by current camera position
* Removed old debug variables;
Added dot products count debug variable;
Avoid doing dot product if already done;
* Fixed normal mapping
* Fixed drawing of effects, moveables explosions and other things using the static FX;
* Instancing for scarabs and bats
* Fixed missing sorted sprites in overlapping rooms
* fixed merging issues, made branch playable
* Fixed sorted quads drawing (and now footprints work)
* Added white sprite;
Added AddColoredQuad() functions;
* pulled latest instancing branch
* included AddQuad from instancing branch
* Fixed missing sprites
* formatting
* update
* update
* merged develop to boat effect
* Organise includes
* Fix formatting
* Avoid using 5 different names for the same thing
* Avoid manual trigonometry
* Simplify use of enum class
* Prepare structs for later
* Outline streamer object methods
* Simplify
* Un-invert streamer array; use "for each" loops
* Store segments in dynamic container
* Remove unneeded function
* Simplify
* Store only 2 vertices per segment
* Progress
* Progress
* Allow for multiple instances of the same streamer
* Define constants; fix StreamerInstancer
* Update blend mode
* Simplify class structure
* Simplify
* Further restructuring
* Have smooth tail end when starting a streamer
* Pass life as value in seconds
* Update drawing
* Properly erase empty elements
* Clear up naming ambiguities
* Add assertions
* Simplify loops
* Simplify; clamp interpolation alpha value just in case
* Clear streamers during cleanup
* Simplify
* Optimise update methods
* Pass const references instead of copies of objects to quad rendering
* Simplify
* Update effect templates
* Slightly optimise sprite functions
* Add methods for streamer vertex handling
* FINALLY get AxisAngle working with streamers
* Simplify
* Update AxisAngle
* Allow streamers to rotate; simplify AxisAngle usage for helix
* Add TranslatePoint() overloads
* Progress
* Add converter method to AxisAngle
* Rename class; use flags
* Fix flags
* Use std::min
* Simplify
* Fix error
* Fix sprite blending
* Prepare vehicle wake function
* Create SpawnVehicleWake() and adopt for speedboat
* Remove commented code
* Add comment
* Update wake function
* Backtrack
* Adopt streamer function for kayak
* Update vehicle wakes
* Roughly update wake offsets
* Simplify
* Add comment; fix condition
* Update VehicleHelpers.cpp
* Update VehicleHelpers.cpp
* Adjust wake function and adopt for UPV
* Remove old streamer implementation
* Remove "this->" on member variables
* Update parameters
* Cleanup
* Update savegame
* Add failsafe
* Fix streamer opacity handling
* Update VehicleHelpers.cpp
* Rename parameters
* Make streamers fade in faster
* Adjust minecart wake offset
* Remove debug Bit.Trip rainbow
* Simplify
* rised the wakes on water level a nit for opaque textures
* Always align wakes with water surface height; demagic values
* Adjust wake function
* Use TEN assertion()
* rised the streamers a bit so that it also works on opaque textures
* adjusted speedboat wake offsets
* Fix wakes clamping on water surface
* add missing semi-colon
---------
Co-authored-by: MontyTRC89 <montyhammet@hotmail.it>
Co-authored-by: Lwmte <3331699+Lwmte@users.noreply.github.com>
Co-authored-by: Kubsy <kubadd475@gmail.com>
Co-authored-by: Sezz <sezzary@outlook.com>
* Create classes for status bars
* Formatting
* Remove unnecessary lines
* Add air status bar
* Simplify health bar logic
* Add sprint status bar
* Add comments
* Rename constant
* Add comments
* Simplify draw logic; adjust bar life
* Exclude torch
* Rename constant
* Prepare opacity functionality for status bars
* Simplify colour values
* Organise bar rendering code; remove unused constant
* Demagic several values
* Add constant
* Encapsulate constants inside classes; update bar display life
* Pass reference to renderer HUD bar
* Update StatusBars.cpp
* Rename parameter
* Update StatusBars.cpp
* Encapsulation
* Tabs
* Remove unnecessary parameters
* Refine health bar behaviour
* Reduce copypase
* Don't show air bar when wading in water
* Don't show air bar while treading water
* Only show air bar when necessary
* Refine check
* Don't flash sprint bar
* Initialise bars properly on level load
* Avoid depleting air bar when dead
* Remove unnecessary includes; rename local variables and constants
* Rename
* Rename function
* Update StatusBars.h
* Add GetLaraInfo() overloads
* Remove else
* Update comment
* Remove include
* Adjust bar positions
* New rooms collector
* Fixed bugs in rooms collector;
Added caching of transformed portals vertices;
* Added more optimizations
* Fixed a bug in room collector;
Restored build configurations;
* Added static meshes caching;
Improved rooms collector;
Added statistics for rooms collector;
* Added ControlPhase time
* Corrected sme typos
* Moved scissor rectangle calculation away from draw routines
* Added cache invalidation
* Normalize camera to door vector
* Added test code from OL;
* Excluded dot = 0 from doors processing; Increades stack overflow guard limit to 128; Removed test code;
* Optimized drawing of additive sprites
* Increased sprites instances count to 512 per bucket; Index UV array in shader by index instead of branching;
* Cleanded sprites shaders;
Optimized alpha blended sprites;
* Added Width and Height fields to Texture2D;
Restored underwater caustics;
* Restored bars drawing;
* Restored drawing of overlays
* Fixed fit code in DrawFullScreenSprite()
* Upgraded to DXTK 2019;
Implemented DDS loading;
* Upgraded DXTK to 2019
* Allow loading of both DDS and PNG textures
* Temporarly disabled shininess in inventory
* Optimized alpha blended faces;
Fixed bug with floating statics alpha blended polygons;
Fixed gunshells when alpha blended faces are present on screen;
Restored debug stats also for release mode;
* Fixed GPU states in alpha blend pass;
* Some names refactoring;
* Renamed AddSprite3D to AddQuad;
Added overload to AddQuad for setting individual colors to each quad vertex;
* WIP statics instancing
* Refactored constant buffers;
Restored gunflashes;
WIP dynamic lights for instanced statics;
* Polished instancing code
* Code fixes
* Changed grouping of instanced statics using std::map;
Improved instancing;
* Fixed lighting for instanced statics
* Draw gunshells with instancing
* Changed caustics frame index if out of range
* Removed not needed and repeated calculation of room's distance in rooms collector
* Avoid doing dot product if already was tested that door can't be seend by current camera position
* Removed old debug variables;
Added dot products count debug variable;
Avoid doing dot product if already done;
* Fixed normal mapping
* Fixed drawing of effects, moveables explosions and other things using the static FX;
* Instancing for scarabs and bats
* Fixed missing sorted sprites in overlapping rooms
* Fixed sorted quads drawing (and now footprints work)
* Added white sprite;
Added AddColoredQuad() functions;
* Fixed missing sprites
---------
Co-authored-by: MontyTRC89 <montyhammet@hotmail.it>
Co-authored-by: Lwmte <3331699+Lwmte@users.noreply.github.com>
* Add fixed shadow and dropped pickup positions
* Update TranslatePoint() overloads
* Rename parameters
* Alphabetise includes
* Also rename to "relOffset" in another function
* Rewrite pickup drop method
* Added step test for candidate pickup drop positions
* Randomize startup point, don't use first joint position for shadow as it isn't correct sometimes
* Do more thorough step tests for pickups
* Fix rotation
* Simplify step tests again
* Update pickup.cpp
Co-authored-by: Sezz <sezzary@outlook.com>