Opened 18 years ago
Last modified 17 years ago
#195 reopened defect
cleanup: src/lib/coord - PNode System — at Version 2
Reported by: | patrick | Owned by: | patrick |
---|---|---|---|
Priority: | blocker | Milestone: | Old Orxonox tickets orx-v0 |
Component: | GeneralFramework | Version: | |
Keywords: | Cc: | ||
Referenced By: | References: |
Description (last modified by patrick)
PNode Major Cleanup
Goal
Clean up the source, as stated in the cleanup milestone
Additional Requirements
- check for better PNode tree integrity
- PNode is not reliable, it doesn't do what the user expects it to do (because it is only updated after each mainloop-cycle)
- coordinates are not updated in real-time, therefore the next object requesting current coordinates gets the old coordinates
- setAbsCoorSoft() interpolates between two points using quadslerp. This is a good thing to have. But its very dangerous and brings ambiguity with it: someone setting/shifting coordinates interferes with this automatic inline coordinate setting ⇒ the object doesn't move or moves very strange ⇒ very hard to debug. Rethink this completely
- create a new delete function e.g. delete() that is used for Pnode internal cleanup ⇒ this will have very critical effects on the whole framework. Currently the pnode tree is used to clean up all pnodes. This shouldn't be used anymore since its ambiguous: multiple lists:
- object manager lists
- base object class lists Choose one to be taken as the deleting containter and only delete objects in this list (not as now partially via pnode tree and partialy via other lists).
- deleting PNodes: make delete operator private/protected, so pnodes can not be deleted by accident
Change History (2)
comment:1 Changed 18 years ago by patrick
- Description modified (diff)
comment:2 Changed 18 years ago by patrick
- Description modified (diff)
Note: See
TracTickets for help on using
tickets.