TypicalThreeDeeEditor

Last edit April 30, 2004
The typical 3d editors share much in common.

The basic units of a 3d editor are:
  • A ThreeDeeGraphics display (usually OpenGl, sometimes DirectDraw)
  • A database of materials, models, and textures
  • A set of scenes, where each scene contains a set of elements, which stores the material,model,texture, and transforms
  • A GUI with element selection/modification
  • A file format for the 3d documents

Additional units may be:
  • Importing/Exporting of 3rd party formats, i.e. ModelLoading
  • Various rendering modes - point,wireframe,flat,shaded,textured
  • Clipboard with cut/copy/paste
  • Select All/Invert/None
  • Right button usually activates a context menu
  • UnitTests for the display - HowToUnitTestOpenGlCalls

Standard tools usually include:
  • Select and Rectangle select
  • Transform/Rotate/Scale, and may include mirror/bend/twist/shear
  • Paint

Element selection must be consistent:
  • Left button usually selects an element
  • Shift+Left = Add to selection
  • Ctrl+Left - Remove from selection

Solved:
  • Selection occurs on b1(down) as the choice between selecting and showing the relevant context menu would occur then
  • If selection happens over a currently selected element - what is the behaviour? Simply select the new element
  • If selection happens over multiple currently selected element - what is the behaviour? Select the singular

Unresolved:
  • If the context menu activates differently when over an element, should the selection change? (I don't think so. . . )
  • Should the selection be emptied if b1_down happens when not over an element? (have to see what others do. . . )
    • Yes - Clears selection
    • No - Retains selection, more user-friendly, allows better use of toolbars

. . . page is still in progress -- LayneThomas