Best choice for basic 3D programming?
My university project involves analysis of a small system of atoms. In general, I am writing code to find certain properties of these modelled systems. In my opinion, it would be handy to include some 3d representations of the system. What system would you recommend?
I need:
1. To draw spheres, lines and other simple elements.
2. To be able to make simple UI (rotate, zoom, make slider for time-dependent analysis and etc)
3. To have the model inside Windows Forms Program, maybe inside a control element (would highly simplify the overall outcome). Console Application and UI is not appealing
4. To be able to write this code rather fast - it is just the icing over the cake.
There are some very capable 3D viewers, like VMD. However, I would prefer to make something on my own to have much greater control and more simplified UI.
I was exploring into several possibilities, like Direct 3D or Axiom, but the decision is hard to make without studying these environments in depth, which requires too much time.
What would be your choice?
Re: Best choice for basic 3D programming?
WPF or SILVERLIGHT are two choices. One runs in a browser-type atmosphere while the other is more like Windows programs
Re: Best choice for basic 3D programming?
dglienna gave you some good options, but if your program is going to be spending a lot of time rendering than those will be too slow. I would test it first, but CAD like applications would go with a lower level engine like Direct 3D. WPF actually uses Direct 3D, but it is not made for applications that will spend a lot of time inside of rendering loops.
Re: Best choice for basic 3D programming?
Re: Best choice for basic 3D programming?
Quote:
Originally Posted by
dglienna
WPF or SILVERLIGHT are two choices. One runs in a browser-type atmosphere while the other is more like Windows programs
I am playing with WPF at the moment. It seems to be rather nice, but complete lack of primitives is absolutely daunting...
What library/engine would you recommend? Ideally, I should be able to use C# code just to define the position, radius and color of sphere/cone.
Re: Best choice for basic 3D programming?
I would say that DirectX would be a good choice, ive only started with it recentley. You can choose between hardware or software, you can apply normals to vertecies quite easily, I found it was pretty quick, i was rendering 20-30 frames per second with over 10,000 triangles forming a heightmap, un textured, it includes a direct input for keyboard to. Good luck
Re: Best choice for basic 3D programming?
How about XNA? It can do SPRITES, and you SET THE FRAMERATE (to 30fps) in the engine. Deploys to Game, Phone, or the XNA Game Studio System...
Re: Best choice for basic 3D programming?
Quote:
Originally Posted by
dglienna
How about XNA? It can do SPRITES, and you SET THE FRAMERATE (to 30fps) in the engine. Deploys to Game, Phone, or the XNA Game Studio System...
Is it easy to integrate it to Windows Forms app?
Re: Best choice for basic 3D programming?
Not yet, but it's supposed to be in the works. I guess the XBOX has the graphics processor that allows it to run without the emulator. You can run it within XNA Game Studio
Re: Best choice for basic 3D programming?
xna is the best choice, it has all the drawing and rendering capabilities already there - you wont even need to write shaders for it since you are just doing atom models. As far as using winforms you cant (at the moment) substitute XNA GUI for winforms GUI - true that would make the process of getting something up and running much faster if you didn't have to create your own GUI. But there are a tun of 3D basic game tutorials that at least show how to get a start - and gameplay menu running with minimal buttons. From there you should be able to expand it.
just found this > http://www.gameprojects.com/project/?id=e68f3464c4
winforms beta for XNA