summaryrefslogtreecommitdiff
path: root/game
Commit message (Collapse)AuthorAge
* Split water from terrainDan Goodliffe2024-04-06
| | | | Shares the geo data instance, and still has the same implementation at this stage.
* Don't garbage collect the terrain meshDan Goodliffe2024-04-04
| | | | Use skipping iterators instead, GC would be implicit during save/load
* Update normals only as requiredDan Goodliffe2024-04-04
|
* Boundary edge and one time split with repeated 4-way split of large facesDan Goodliffe2024-04-01
|
* Add lots of simple triangle property helpersDan Goodliffe2024-04-01
|
* Replace face 4-way splitDan Goodliffe2024-04-01
| | | | Fixes integer rounding issue and returns the new face handles
* Factor out some helper lambdas into membersDan Goodliffe2024-03-31
|
* Split long boundary edgesDan Goodliffe2024-03-31
|
* Split faces with two large boundary sidesDan Goodliffe2024-03-31
|
* Don't save original face handlesDan Goodliffe2024-03-31
| | | | Not required, likely to change anyway.
* Handle almost straight edges with a simple bisectDan Goodliffe2024-03-30
|
* Dedupe addition of extrusionsDan Goodliffe2024-03-23
|
* Handle and test concave surface boundariesDan Goodliffe2024-03-23
|
* Create extents purely from corner arcsDan Goodliffe2024-03-23
|
* Remove boundary collectionDan Goodliffe2024-03-23
| | | | We can simply walk the boundary as required
* Extract vector_normal helper into libDan Goodliffe2024-03-23
|
* Add helper constructors to ArcDan Goodliffe2024-03-21
| | | | | | * Two angles, wraps logic ensuring b after a * Two vector directions * Centre and two endpoints, in at least 2 dimensions, uses .xy()
* Make arc_length a member functionDan Goodliffe2024-03-21
|
* Simplify creation of planesDan Goodliffe2024-03-18
| | | | Uses limit directions instead of fake triangles
* maybe_unused return from cut point searchDan Goodliffe2024-03-18
| | | | Only asserted
* Switch to using planes instead of triangles for deformaton cutDan Goodliffe2024-03-18
| | | | | Removes the hacky need for going a bit too far to account for rounding errors... which didn't really work anyway.
* Fix generation of halfedge extrusion extentsDan Goodliffe2024-03-14
|
* Simplify cut loop and termination case searchDan Goodliffe2024-03-14
| | | | Looks for a halfedge from current vertex to end vertex.
* Rewrite most of setHeightsDan Goodliffe2024-03-08
| | | | | Accounts for sensible corners and fixes quite a few bugs and edge cases... introduces a few more, is still a bit glitchy in places
* Bail out early if the input does not define an areaDan Goodliffe2024-03-08
|
* Remove the nosplit listDan Goodliffe2024-02-24
| | | | Not required now we don't randomly wonder into the new edges range
* Psycho-rebased branch deform-terrain on top of mainDan Goodliffe2024-02-24
|\
| * First cut of terrain deformationDan Goodliffe2024-02-22
| | | | | | | | | | | | | | | | | | | | This "works" for some definition of works... But it's flawed in many ways, not least the following: * It's glitchy for no obvious reason * It's unreliable; fails if you tweak the parameters * The sides of the modified area are triangulated in the dumbest possible fashion, which results in ill-formed polygons * Probably other things, but... It works, remember...
| * Fix calculation of texture coords of terrainDan Goodliffe2024-02-22
| | | | | | | | While we still use this...
| * Fix getting cartesian coords from triangle bariposDan Goodliffe2024-02-14
| |
| * Include face handle in intersectRay resultDan Goodliffe2024-02-13
| |
| * Add helpers for testing for triangle overlap/containednessDan Goodliffe2024-02-12
| |
| * Create flat GeoData as 10m squares instead of one big squareDan Goodliffe2024-02-12
| |
* | Simplify vector addition/subtraction with differnt typesDan Goodliffe2024-02-24
|/ | | | | Automatically applies correct rounding with float to int operations, adjusts test expectations accordingly.
* Remove the generic cache completelyDan Goodliffe2024-01-26
|
* Remove the static texture cacheDan Goodliffe2024-01-25
| | | | | Static variables persist too long, destruction is unmanaged and occurs after the gl context is gone.
* Bind the network profile in as uniformsDan Goodliffe2024-01-22
| | | | Makes the network shaders generic to network type
* Remove the old custom mesh per network link renderingDan Goodliffe2024-01-21
|
* Pass curve link radius, no recalculate, its constantDan Goodliffe2024-01-20
|
* Implement basic network curve part shaderDan Goodliffe2024-01-20
|
* Update network with vertex arrayDan Goodliffe2024-01-20
|
* Render rail network using new shadersDan Goodliffe2024-01-20
| | | | Non-functional, totally unimplemented at this stage
* Copy render vital link data to vertex bufferDan Goodliffe2024-01-20
|
* We only need 3x3 matrix for model rotation specDan Goodliffe2024-01-13
|
* Only create VAOs for the light type(s) in useDan Goodliffe2024-01-13
|
* Merge common parts of light type verticesDan Goodliffe2024-01-13
|
* Minor tidy upDan Goodliffe2024-01-13
|
* Add model support for point lightsDan Goodliffe2024-01-12
| | | | Still invokes non-instanced point light shader
* Initial commit with working light instancingDan Goodliffe2024-01-10
|
* Add spot light definition, loader, and renderingDan Goodliffe2024-01-10
| | | | Rendering is untested, data is passed to whatever GL program is currently active.