Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Opened 17 years ago

Last modified 17 years ago

#195 reopened defect

cleanup: src/lib/coord - PNode System — at Version 1

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 (1)

comment:1 Changed 17 years ago by patrick

  • Description modified (diff)
Note: See TracTickets for help on using tickets.