Ticket #66 (closed task: fixed)

Opened 1 year ago

Last modified 1 year ago

Major API Changes

Reported by: clayasaurus Assigned to: clayasaurus
Priority: major Milestone: 0.3
Component: unspecified Version: svn
Keywords: Cc:

Description

I am thinking of ditching the module style scheme and go with global classes/singletons. The reasons...

  • Can do either arc.input or just input
  • Allows for inheritance, polymorph, etc.
  • new instead of .open, delete instead of .close, or maybe .destroy()

I'm thinking like...

BaseWindow? Class

  • SDLWindow class
  • DirectX Window class
  • GLFW Window class

BaseInput? Class

  • SDLInput Class
  • DirectXInput Class

BaseDraw? Class

  • OpenGL Draw Class
  • DirectX Draw Class

etc. Not that we'll necessarily support DirectX (in long future maybe), but that it will be possible to if we want to.

Also, no need for long arc.window / arc.input , although those will still work with no code changes. More discussion can ensue once version .3 is reached.

Change History

06/15/07 14:38:16 changed by clayasaurus

  • type changed from defect to task.

06/20/07 11:11:59 changed by clayasaurus

  • status changed from new to closed.
  • resolution set to fixed.

After a while of thinking about this, I realized how bad of an idea this is.

1) This will cause code to become too unmaintainable for us to handle

2) No platform specific code should be in Arc anyway, because all libraries Arc depends upon are cross platform

3) We will loose focus from improving the basic core system of Arc's physics system, gui, scenegraph, etc.

4) Classes ugly new/delete

I just don't think it's worth it. It will create too much unmaintainable code and Arc will become an unwieldy beast.