summaryrefslogtreecommitdiff
path: root/game/geoData.cpp
Commit message (Collapse)AuthorAge
* Don't rely on triangle centroid not already having a surfaceDan Goodliffe5 days
|
* Process set height as required in chunks of target vertexDan Goodliffe5 days
|
* Less allocy/work set based surface/recursive height settingDan Goodliffe5 days
|
* Add adjusted boundary vertices to new/changes/boundary listsDan Goodliffe6 days
|
* Expand new verts collection onceDan Goodliffe10 days
| | | | Before doing vertex normal recalc only, not on every insert
* Only build/run GeoDataMesh::sanityCheck for debugDan Goodliffe11 days
|
* Refactor GeoData::setHeights until a struct made of a logical breakdown of ↵Dan Goodliffe11 days
| | | | the process
* Fixes and tests to new range helpersDan Goodliffe13 days
|
* Range adaptor to make triangle strip triplesDan Goodliffe2025-02-15
|
* Use new helpers to simplify close entity search in GeoData::setPointDan Goodliffe2025-02-14
|
* Move basic setHeights lambdas into proper helper functionsDan Goodliffe2025-02-13
|
* Replace mesh generation counter with afterChange eventDan Goodliffe2025-02-10
|
* Split GeoData mesh basics into a subclassDan Goodliffe2025-02-09
| | | | Declutters the class for terrain related things
* Move lots of geoData helpers into libDan Goodliffe2025-02-09
|
* Improve logging and fault detection during mesh mutationDan Goodliffe2025-02-08
|
* Set height when reusing adjacent verticesDan Goodliffe2025-02-08
|
* Verify an edge can be flippedDan Goodliffe2025-02-06
| | | | | Asserts the resulting triangle pair would be both still face up, not the case if the original triangles do not form a convex polygon
* Update PointFace _face cache as required instead of erroringDan Goodliffe2025-02-06
|
* Check all adjacent vertex before edges when cutting triangle strip edgeDan Goodliffe2025-02-03
|
* Flip edges if better instead of splitting them when cutting triangle strip edgeDan Goodliffe2025-02-02
|
* Add distance helperDan Goodliffe2025-01-21
| | | | Works with integer positions, first template param allows forcing to N dimensions
* Include arc angle in curved terrain walkDan Goodliffe2025-01-05
|
* Return surface face list from setHeightsDan Goodliffe2025-01-05
|
* Helper to declare and add OpenMesh property declarativelyDan Goodliffe2025-01-05
|
* Fix curve walk edge case where the curve legitimately returns to the ↵Dan Goodliffe2025-01-02
| | | | previous face
* Return angle of intersection of arc with lineDan Goodliffe2025-01-01
|
* Walk terrain along a curve - edge cases existDan Goodliffe2025-01-01
|
* Pass lots more information during GeoData::walkDan Goodliffe2024-12-30
|
* Set surface from all triangles, not just the firstDan Goodliffe2024-12-23
| | | | First may already have a surface in the case of a join
* Copy properties when split faces and edgesDan Goodliffe2024-12-23
|
* Use correct triangle when creating surface boundary endsDan Goodliffe2024-12-23
|
* SetHeightOptions surface changed to defaulted pointerDan Goodliffe2024-12-22
|
* Store a generation number for GeoDataDan Goodliffe2024-12-22
|
* Set height when reusing vertices during setHeightsDan Goodliffe2024-12-21
|
* Add sanity checking logic to GeoDataDan Goodliffe2024-12-18
|
* Don't cut internal boundariesDan Goodliffe2024-12-18
| | | | | Existing terrain contains enough nodes, assumes input surface is flat. For non-flat requires, submit several surfaces.
* Don't make arbitrary changes to mesh for triangle boundariesDan Goodliffe2024-12-18
| | | | | | | | | | Making these arbitrary changes can lead to inverted adjacent faces, instead just: a) use the near node where it is, or b) create the edge split along its length without lateral movement Same principal as previous commit, addresses issues where tracing would fail seemingly at random and throws on error now.
* Don't make arbitrary changes to mesh for triangle cornersDan Goodliffe2024-12-18
| | | | | | | | | | Making these arbitrary changes can lead to inverted adjacent faces, instead just: a) use the near node where it is, or b) create the edge split along its length without lateral movement Removes the check that these are already used and/or boundaries as they're not being changed now anyway.
* Reuse close edges when adding new vertices for surfaceDan Goodliffe2024-12-15
|
* Remove GeoData::difference for points, use global versionDan Goodliffe2024-12-01
|
* Update new/moved vertex normalsDan Goodliffe2024-11-27
|
* Surface walk to set face surface propertyDan Goodliffe2024-11-24
|
* Pass setHeights options as a struct with defaultsDan Goodliffe2024-11-23
|
* Remove split face specialisationDan Goodliffe2024-11-23
|
* Share code between boundary and strip edge node reuseDan Goodliffe2024-11-23
|
* Reuse existing vertices when processing strip verticesDan Goodliffe2024-11-16
|
* Reuse existing vertices when processing boundary partsDan Goodliffe2024-11-14
|
* Fix do bounary part iterationDan Goodliffe2024-11-14
| | | | Exit when current vertex is adjacent to the end
* Reverse order of last boundary part additionDan Goodliffe2024-11-14
| | | | It's the manual last end, shame it has to be weird.
* First version rewrite of terrain deformation, much still to doDan Goodliffe2024-11-13
|