Sign in to follow this  
Kealthes

OpenGL Using 3ds Max and OpenGL

Recommended Posts

Kealthes    96
Heey guys,

I am kinda new to graphics and game programming and my question is pretty simple. We need to make a 3d model of our school and decided to make use of opengl and 3ds max. But is it possible to use 3ds max models in opengl? Can it be done with the help of Maxscript, in that case I am prepared to learn maxscript. How do professional game developers do that?
I know this question has been asked in previous topics, but these are all outdated and the answers are not very straight to the point. That's why I am asking again.

Thanks for your help.

Share this post


Link to post
Share on other sites
Kealthes    96
I know 3ds max can export to several different formats, but how are these to be used with opengl? I don't think opengl can open any of these files (or can it?). That's why I was wondering what the use of maxscript was in all of this.

Share this post


Link to post
Share on other sites
BitMaster    8651
OpenGL is a rendering API. A rendering API does not deal with specific file formats, that would be task of a game engine, a scene manager or an utility library. There should be plenty of loaders out there which can load 3ds files to produce information that can be sent to OpenGL. Alternatively, Maxscript could be used to write custom mesh information which could be loaded by the program without implementing a complete 3ds loader or linking a library to do that job.

Share this post


Link to post
Share on other sites
BitMaster    8651
[quote name='Kealthes' timestamp='1307374391' post='4820111']
So, would you recommend Maxscript then?
[/quote]

I have not used Maxscript for ages and don't remember much from it. Considering you sound like a beginner, I would advise against the double problem of implementing a writer in Maxscript and a corresponding loader in another language. I don't know to what formats 3ds exports to nowadays but there should be an option for something simple like [url="http://en.wikipedia.org/wiki/Wavefront_.obj_file"]Wavefront obj files[/url]. Writing a loader from scratch for that should be simpler if you don't have other alternatives, after all the format is a readable text file.

Share this post


Link to post
Share on other sites
AndyEsser    394
As BitMaster said OpenGL is for rendering only, it is your responsibility to load the data from whatever source you want. Maxscript is not a solution to this, Maxscript is for use within 3DS Max.

My suggestion would be to export as .OBJ (Wavefront Obj File) and use a prebuilt importer (there are hundreds on the web).

Share this post


Link to post
Share on other sites
Kealthes    96
I just found a very usefull site:
[url="http://openglsamples.sourceforge.net/projects/index.php/blog/index/"]http://openglsamples.sourceforge.net/projects/index.php/blog/index/[/url]

this contains all the tutorials I guess. Thanks for your help anyway guys.!

Share this post


Link to post
Share on other sites
ryan20fun    2635
why was my posts knocked down ? knocking down peoples posts does nothing to motivate them to look into solving the problem, in actual fact it makes them stear away from helping you. just ignore the post, and the person might read a few docs and do some research into the subject.

Share this post


Link to post
Share on other sites
BitMaster    8651
While I did not personally vote your posts down, your first post did not contain any relevant information while your second post contained nothing but a wrong assumption. The aim for a technical discussion should be to have the maximum amount of signal with the minimum amount of noise and unfortunately all you added was noise. As a rule, outside the Lounge I would advise against commenting on something of which you only have a very vague idea. People who actually know about the topic generally take it badly if you mention faulty information or half-truths.

Share this post


Link to post
Share on other sites
AndyEsser    394
Again I did not vote you down; however I would refrain on speculating on subjects you have no/little knowledge about. For instance, I don't comment in DirectX as I have never used it.

Rate downs say nothing about you, it's an indication of how useful people find your post. In this instance, your 2nd post provided no value to the discussion.

Share this post


Link to post
Share on other sites
Aks9    1499
First of all I have to say that I don't like this "Facebook appearance" of GameDev, and "like/dislike" stuff.

Should we really play social networking also on this forum? :(

But, let's be more practical...

[quote name='Kealthes' timestamp='1307370981' post='4820091']We need to make a 3d model of our school and decided to make use of opengl and 3ds max.[/quote]

This is a very unwise decision if you are not experts in 3DS Max. If you don't have any particular reason to use MAX, I would suggest you to use Google SketchUp.

[quote name='Kealthes' timestamp='1307370981' post='4820091']But is it possible to use 3ds max models in opengl?[/quote]

You cannot use any 3D format directly from the OpenGL. The only way is to export the model into some well known 3D format, find and download (or develop) loading library, and load the model into your GL scene. MAX format is a proprietary file format so it is hardly that you can use it for the models. 3DS is more common, but old and not very useful format. I would recommend COLLADA. All 3D programs nowadays can export into COLLADA.

[quote name='Kealthes' timestamp='1307370981' post='4820091']Can it be done with the help of Maxscript, in that case I am prepared to learn maxscript.[/quote]

Forget about MaxScript. It is used to automate and procedurally control processes from the MAX.

[quote name='Kealthes' timestamp='1307370981' post='4820091']How do professional game developers do that?[/quote]


Professionals do use MAX, Maya, Poser and similar programs, but...

1. you are not professionals

2. you don't have complex characters with complex kinematic chains

3. you just have to model a building

So, my humble advice is to stick with SketchUp or some similar program, model your building, add textures, export to COLLADA file format, download COLLADA loading library (FCollada, Collada-DOM, ...), learn how to use OpenGL (this is the most significant and the most complex topic), load and display the building.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this  

  • Partner Spotlight

  • Similar Content

    • By pseudomarvin
      I assumed that if a shader is computationally expensive then the execution is just slower. But running the following GLSL FS instead just crashes
      void main() { float x = 0; float y = 0; int sum = 0; for (float x = 0; x < 10; x += 0.00005) { for (float y = 0; y < 10; y += 0.00005) { sum++; } } fragColor = vec4(1, 1, 1 , 1.0); } with unhandled exception in nvoglv32.dll. Are there any hard limits on the number of steps/time that a shader can take before it is shut down? I was thinking about implementing some time intensive computation in shaders where it would take on the order of seconds to compute a frame, is that possible? Thanks.
    • By Arulbabu Donbosco
      There are studios selling applications which is just copying any 3Dgraphic content and regenerating into another new window. especially for CAVE Virtual reality experience. so that the user opens REvite or CAD or any other 3D applications and opens a model. then when the user selects the rendered window the VR application copies the 3D model information from the OpenGL window. 
      I got the clue that the VR application replaces the windows opengl32.dll file. how this is possible ... how can we copy the 3d content from the current OpenGL window.
      anyone, please help me .. how to go further... to create an application like VR CAVE. 
       
      Thanks
    • By cebugdev
      hi all,

      i am trying to build an OpenGL 2D GUI system, (yeah yeah, i know i should not be re inventing the wheel, but this is for educational and some other purpose only),
      i have built GUI system before using 2D systems such as that of HTML/JS canvas, but in 2D system, i can directly match a mouse coordinates to the actual graphic coordinates with additional computation for screen size/ratio/scale ofcourse.
      now i want to port it to OpenGL, i know that to render a 2D object in OpenGL we specify coordiantes in Clip space or use the orthographic projection, now heres what i need help about.
      1. what is the right way of rendering the GUI? is it thru drawing in clip space or switching to ortho projection?
      2. from screen coordinates (top left is 0,0 nd bottom right is width height), how can i map the mouse coordinates to OpenGL 2D so that mouse events such as button click works? In consideration ofcourse to the current screen/size dimension.
      3. when let say if the screen size/dimension is different, how to handle this? in my previous javascript 2D engine using canvas, i just have my working coordinates and then just perform the bitblk or copying my working canvas to screen canvas and scale the mouse coordinates from there, in OpenGL how to work on a multiple screen sizes (more like an OpenGL ES question).
      lastly, if you guys know any books, resources, links or tutorials that handle or discuss this, i found one with marekknows opengl game engine website but its not free,
      Just let me know. Did not have any luck finding resource in google for writing our own OpenGL GUI framework.
      IF there are no any available online, just let me know, what things do i need to look into for OpenGL and i will study them one by one to make it work.
      thank you, and looking forward to positive replies.
    • By fllwr0491
      I have a few beginner questions about tesselation that I really have no clue.
      The opengl wiki doesn't seem to talk anything about the details.
       
      What is the relationship between TCS layout out and TES layout in?
      How does the tesselator know how control points are organized?
          e.g. If TES input requests triangles, but TCS can output N vertices.
             What happens in this case?
      In this article,
      http://www.informit.com/articles/article.aspx?p=2120983
      the isoline example TCS out=4, but TES in=isoline.
      And gl_TessCoord is only a single one.
      So which ones are the control points?
      How are tesselator building primitives?
    • By Orella
      I've been developing a 2D Engine using SFML + ImGui.
      Here you can see an image
      The editor is rendered using ImGui and the scene window is a sf::RenderTexture where I draw the GameObjects and then is converted to ImGui::Image to render it in the editor.
      Now I need to create a 3D Engine during this year in my Bachelor Degree but using SDL2 + ImGui and I want to recreate what I did with the 2D Engine. 
      I've managed to render the editor like I did in the 2D Engine using this example that comes with ImGui. 
      3D Editor preview
      But I don't know how to create an equivalent of sf::RenderTexture in SDL2, so I can draw the 3D scene there and convert it to ImGui::Image to show it in the editor.
      If you can provide code will be better. And if you want me to provide any specific code tell me.
      Thanks!
  • Popular Now