Alphabetical Index | Tags by Size | Find tag:

BSP Builder (Grouped)

Related tags: Blockmap, BspLeaf, BspNode, GameMap, HEdge, Line, LineDef, LineEditWidget, LineSegment, LineSightTest, LineWrapping, Map, Plane, Polyobj, SectionEdge, Sector, WallEdge, WallSpec, World

Authorship: 99% danij, 1% skyjake

View commits by date

Jump down to:
  Refactor (58)
  Cleanup (53)
  Fixed (18)
  Added (8)
  ConvexSubspace (4)
  Optimize (4)
  SuperBlockmap (2)
  Debug (1)
  EdgeTips (1)
  Partitioner (1)
  Resources (1)
  World (1)
August 2013
2013-08-17 : Ensure 'extra' meshes contain only half-edges for map lines
June 2013
2013-06-17 : Allocate geometry components from the Map's primary Mesh
May 2013
2013-05-28 : Made ConvexSubspace responsible for producing leaf geometries
2013-05-28 : Deferred leaf geometry generation until after partitioning
2013-05-19 : Removed "migrant half-edge" notification
2013-05-19 : Defer creation of half-edges; replaced sector selection algorithm
2013-05-17 : Discard degenerate geometries produced by the partitioner
2013-05-14 : Implementation improvements
2013-05-12 : Produce a full complement of half-edges
September 2012
2012-09-03 : Disabled degenerate collapsing
August 2012
2012-08-28 : Allow short-circuiting the near-miss costing
2012-08-24 : Automatically collapse degenerate leaves
April 2012
2012-04-14 : Use coord_t for all map space coordinates, angles and distances
2012-04-13 : Maintain BspLeaf::hedgeCount throughout the build
2012-04-13 : Link up the BSP objects during the build process
2012-04-09 : Standardizing log message formatting
2012-04-09 : Zero the head of the hedgetip list for each vertex when clearing
2012-04-07 : Maintain running total counts of BSP objects owned by Partitioner
2012-04-07 : Link BspTreeNodes to their respective parents
2012-04-06 : Merged bsp/hedges.cpp and bsp/nodes.cpp
2012-04-03 : Encapsulate new vertex creation
2012-04-02 : Also clear any HEdges attached to the unclaimed BspLeaf
2012-04-02 : Destroy all unclaimed BSP data upon BspBuilder destruction
2012-04-02 : Temporarily relocated SideDef -> HEdge linking into BspBuilder
2012-04-01 : Do not modify a Vertex's reference count during a build

  Refactor (58) — BSP Builder

October 2013
2013-10-04 EdgeTips | Refactor : Cleaned up EdgeTips ahead of removing LineOwner rings
May 2013
2013-05-29 Added | Refactor | SuperBlockmap : Added SuperBlock::collateAllSegments()
2013-05-29 Cleanup | Refactor : Numerous cleanup refactorings
April 2013
2013-04-27 Refactor : Began remodelling the space partitioning logic
2013-04-22 Refactor : Updated wrt changes to Vertex
2013-04-07 Refactor : Moved logging of BSP build issues out of Partitioner
2013-04-07 Refactor : Map argument is now specified as const
2013-04-07 Refactor : Removed unnecessary recalculation of the map bounds
September 2012
2012-09-22 Refactor : Use a vector for LineDefInfos in the BSP builder
August 2012
2012-08-31 Cleanup | Refactor : Further cleanup refactorings
2012-08-31 Refactor : Code clarity and minor optimization refactorings
2012-08-27 Cleanup | Refactor : Further minor cleanup refactorings
April 2012
2012-04-08 Refactor : Cleaned up partition costing
2012-04-07 Refactor : Make the total number of HEdges available via Partitioner::numHEdges()
2012-04-07 Refactor : Switched various internal tree traversals to iterative algorithms
2012-04-07 Refactor : Re-implemented all recursive SuperBlockmap traversals as iterative
2012-04-06 Added | Refactor : Added SuperBlock::parent() method for obtaining the parent block
2012-04-06 Refactor : Partitioner now allocates additional Vertexes from its own store
2012-04-06 Added | Refactor : Added interface to BspBuilder for querying the built object counts
2012-04-06 Refactor : Partitioner now has owership of the HEdgeTips
2012-04-06 Refactor : Moved logging of migrant HEdges into Partitioner
2012-04-04 Refactor : Moved unclosed sector record keeping into BspBuilder
2012-04-02 Refactor : Take ownership of the BSP object data in MPE_SaveBsp
2012-04-02 Refactor : Clear the BspHEdgeInfo when ::build() completes
2012-04-02 Refactor : Relocated in-tree linking of BSP data objects to BspBuilder
2012-04-02 Refactor : Relocated build time LineDef data into BspBuilder
2012-04-01 Refactor : Re-implement the BspLeaf, HEdge angle sort buffer with std::vector
2012-04-01 Refactor : Segregated build completion tasks (SoC)
2012-04-01 Refactor : Dynamically attach BspHEdgeInfo to HEdge during the build
March 2012
2012-03-31 Refactor : Removed redundant mhedge_t abstraction
2012-03-31 Refactor : Removed redundant map data references
2012-03-31 Refactor : Build the HEdge LUT before hardening vertexes
2012-03-26 Refactor : Further clean up of SuperBlockmap
2012-03-26 Refactor : SuperBlock can only be instantiated by SuperBlockmap
2012-03-25 Refactor : SuperBlock now implements its own traversal interface
2012-03-25 Refactor : Cleaned up interface between SuperBlockmap and KdTree
2012-03-24 Cleanup | Refactor : Cleanup in preparation for the next round of refactoring
2012-03-23 Refactor : Only allow access to SuperBlock's bsp_hedge_ts by const_iterator
2012-03-23 Refactor : Dropped SuperBlockmap's now unnecessary C wrapper API
2012-03-23 Cleanup | Refactor : Cleanup in preparation for the next round of refactoring
2012-03-23 Refactor : Continued refactoring HPlane
2012-03-22 Refactor : Initial reworking of HPlane
2012-03-22 Refactor : Moved the bsp_hedge_t block allocator into BspBuilder
2012-03-22 Refactor : Mauled the implementation into a separate (but dependent) module
2012-03-21 Refactor : Renamed global functions that will be owned by a "BspBuilder" class...
2012-03-21 Refactor : All SuperBlockmap/SuperBlock functionality implemented as methods
2012-03-21 Refactor : Switched SuperBlockmap to C++ with a C wrapper API
2012-03-20 Refactor : Renamed KdTree as KdTreeNode and implemented KdTree the container
2012-03-20 Refactor : Restrict SuperBlock (de)constructor access to SuperBlockmap
2012-03-20 Refactor : Implemented SuperBlockmap - a container for SuperBlocks
2012-03-20 Refactor : Began refactoring SuperBlock into a typical two dimensional kd-tree
2012-03-20 Refactor : Use separate links in bsp_hedge_t for linking in leafs and superblocks
2012-03-19 Refactor : Replaced bspnodedata_t with BspNode
2012-03-19 Refactor : Moved origin and angle values from HPlanePartition to HPlane
2012-03-14 Cleanup | Refactor : Cleanup
2012-03-14 Refactor : Renamed objects for clarity
2012-03-14 Refactor : Round 1
2012-03-14 Refactor : Transforming the implementation begins

↑ Back to top

  Cleanup (53) — BSP Builder

October 2013
2013-10-05 Cleanup : Cleanup
September 2013
2013-09-20 Cleanup : Cleanup
June 2013
2013-06-03 Cleanup | SuperBlockmap : Cleanup
May 2013
2013-05-29 Cleanup | Refactor : Numerous cleanup refactorings
2013-05-27 Cleanup : Installed ConvexSubspace; cleanup
2013-05-17 Cleanup : Cleanup
April 2013
2013-04-26 Cleanup : Cleanup
2013-04-20 Cleanup : Cleanup
March 2013
2013-03-18 Cleanup : Cleanup
August 2012
2012-08-31 Cleanup | Refactor : Further cleanup refactorings
2012-08-27 Cleanup | Refactor : Further minor cleanup refactorings
2012-08-26 Cleanup | Fixed : Error attempting to cleanup after a failed node build
April 2012
2012-04-13 Cleanup : Cleanup
2012-04-13 Cleanup : Cleanup
2012-04-12 Cleanup : Minor cleanup
2012-04-12 Cleanup : Renamed BspHEdgeInfo as HEdgeInfo
2012-04-12 Cleanup : Renamed bsphedgeinfo.h as hedgeinfo.h
2012-04-12 Cleanup : Store the extended half-edge info in de::bsp::Partitioner
2012-04-12 Cleanup : Use HEdge's lineDef link instead of BspHEdgeInfo
2012-04-12 Added | Cleanup : Added an API mechanism for obtaining ownership of built objects
2012-04-08 Added | Cleanup : Added a private Instance to Partitioner
2012-04-06 Cleanup : Minor cleanup
2012-04-06 Cleanup : Reorganised sources to remove some redundancy in the class hierarchy
2012-04-06 Added | Cleanup : Added typedef for BspBuilder's internal BinaryTree<void*> node
2012-04-04 Cleanup : General cleanup
2012-04-04 Cleanup : Apply pimpl idiom and moved subcomponents into an inner namespace
2012-04-03 Cleanup : Cleanup continues...
2012-04-03 Cleanup : Renamed bspbuilder/intersection.cpp as bspbuilder/hplane.cpp
2012-04-03 Cleanup : Renamed bspbuilder/intersection.hh as bspbuilder/hplane.h
2012-04-03 Cleanup : Standardizing naming conventions and adding comments where useful
2012-04-03 Cleanup : Moved the current partition info from HPlane to BspBuilder
2012-04-03 Cleanup : Renamed superblockmap.hh as superblockmap.h
2012-04-03 Cleanup : Cleanup and apidoc updates for SuperBlockmap
2012-04-02 Cleanup : Renamed bspbuilder/hedges.hh as bspbuilder/bsphedgeinfo.h
2012-04-02 Cleanup : Moved HEdgeIntercept into bspbuilder/hedgeintercept.h
2012-04-02 Cleanup : Relocated C wrapper interface to edit_bsp.cpp
2012-04-02 Cleanup : Cleanup continues...
2012-04-02 Cleanup : Moved LineDefInfo into bspbuilder/linedefinfo.h
2012-04-01 Cleanup : Pruned unused arguments and other obfuscations
2012-04-01 Cleanup : Cleanup continues...
2012-04-01 Cleanup : Cleanup continues...
March 2012
2012-03-31 Cleanup : Removed mhedge_t's now redundant index member
2012-03-31 Cleanup : Cleanup
2012-03-31 Cleanup : Removed now unnecessary sorting of GameMap's HEdge LUT
2012-03-29 Cleanup : Hide SuperBlock's private instance data
2012-03-29 Cleanup : Hide SuperBlockmap's private instance data
2012-03-25 Cleanup : Further cleaned up SuperBlockmap; const methods, references, etc...
2012-03-24 Cleanup : Minor cleanup
2012-03-24 Cleanup : Cleanup partition candidate cost evaluation
2012-03-24 Cleanup | Refactor : Cleanup in preparation for the next round of refactoring
2012-03-24 Cleanup : Relocated various functions to their new homes
2012-03-23 Cleanup | Refactor : Cleanup in preparation for the next round of refactoring
2012-03-14 Cleanup | Refactor : Cleanup

↑ Back to top

  Fixed (18) — BSP Builder

September 2013
2013-09-27 ConvexSubspace | Fixed : Failed to partition a map with overlapped single sided lines
2013-09-20 Fixed : Space partitioner incorrectly assigned sectors adjoining map hacks
July 2013
2013-07-17 Fixed : Ensure BSP output is deterministically predictable
2013-07-17 Fixed | Resources : Uncaught exception loading HYMN_BV2.wad E1M6
June 2013
2013-06-02 Fixed : Space partitioner logic error resulting in mismatched sectors
2013-06-01 Fixed : Space partitioner logic error resulting in mismatched sectors
May 2013
2013-05-19 Fixed : Space partitioner logic error resulting in mismatched sectors
2013-05-18 Fixed : Space partitioner logic error resulting in duplicate line segments
2013-05-17 Fixed : Space partitioner logic error resulting in mismatched sectors
April 2013
2013-04-06 Fixed : Called free() on a new'd Vertex when cleaning up a failed build
February 2013
2013-02-08 Fixed : Vertex allocation must be C++ new
2013-02-08 Fixed : Vertex allocation must be C++ new
September 2012
2012-09-01 Fixed : Prefer non "self-referencing" lines when choosing a BSP leaf's sector
August 2012
2012-08-30 Fixed : Revised degenerate leaf collapsing - no more orphans
2012-08-28 Fixed : Error loading Doom2 MAP02 (degenerate leaf on back side of line #491)
2012-08-26 Cleanup | Fixed : Error attempting to cleanup after a failed node build
May 2012
2012-05-29 Debug | Fixed : Sector mismatch debug message quoted incorrect index
April 2012
2012-04-03 Fixed : Not all HEdges linked to linedefs are also linked to a sidedef

↑ Back to top

  Added (8) — BSP Builder

May 2013
2013-05-29 Added | Refactor | SuperBlockmap : Added SuperBlock::collateAllSegments()
2013-05-27 Added | ConvexSubspace : Added convenient overload of operator << and improved apidoc
2013-05-27 Added | ConvexSubspace : Added ConvexSubspace
April 2012
2012-04-12 Added | Cleanup : Added an API mechanism for obtaining ownership of built objects
2012-04-08 Added | Cleanup : Added a private Instance to Partitioner
2012-04-06 Added | Refactor : Added SuperBlock::parent() method for obtaining the parent block
2012-04-06 Added | Refactor : Added interface to BspBuilder for querying the built object counts
2012-04-06 Added | Cleanup : Added typedef for BspBuilder's internal BinaryTree<void*> node

↑ Back to top

  ConvexSubspace (4) — BSP Builder

September 2013
2013-09-27 ConvexSubspace | Fixed : Failed to partition a map with overlapped single sided lines
May 2013
2013-05-29 ConvexSubspace : Began work on convex subspace's segment continuity map
2013-05-27 Added | ConvexSubspace : Added convenient overload of operator << and improved apidoc
2013-05-27 Added | ConvexSubspace : Added ConvexSubspace

↑ Back to top

  Optimize (4) — BSP Builder

June 2013
2013-06-18 Optimize : Allocate vertexes for BSP line segments from the map's Mesh
September 2012
2012-09-10 Optimize : Use the linedef blockmap to accelerate window effect scanning
2012-09-01 Optimize : Reduced working memory requirement
August 2012
2012-08-30 Optimize : Replaced various internal BSP traversals with a LUT

↑ Back to top

  SuperBlockmap (2) — BSP Builder

June 2013
2013-06-03 Cleanup | SuperBlockmap : Cleanup
May 2013
2013-05-29 Added | Refactor | SuperBlockmap : Added SuperBlock::collateAllSegments()

↑ Back to top

  Debug (1) — BSP Builder

May 2012
2012-05-29 Debug | Fixed : Sector mismatch debug message quoted incorrect index

↑ Back to top

  EdgeTips (1) — BSP Builder

October 2013
2013-10-04 EdgeTips | Refactor : Cleaned up EdgeTips ahead of removing LineOwner rings

↑ Back to top

  Partitioner (1) — BSP Builder

May 2013
2013-05-31 Partitioner : Partially overlapped line segments now split whilst partitioning

↑ Back to top

  Resources (1) — BSP Builder

July 2013
2013-07-17 Fixed | Resources : Uncaught exception loading HYMN_BV2.wad E1M6

↑ Back to top

  World (1) — BSP Builder

August 2013
2013-08-11 World : Only produce Segments for the half-edges of map line sides

↑ Back to top