• Announcements

    • khawk

      Download the Game Design and Indie Game Marketing Freebook   07/19/17

      GameDev.net and CRC Press have teamed up to bring a free ebook of content curated from top titles published by CRC Press. The freebook, Practices of Game Design & Indie Game Marketing, includes chapters from The Art of Game Design: A Book of Lenses, A Practical Guide to Indie Game Marketing, and An Architectural Approach to Level Design. The GameDev.net FreeBook is relevant to game designers, developers, and those interested in learning more about the challenges in game development. We know game development can be a tough discipline and business, so we picked several chapters from CRC Press titles that we thought would be of interest to you, the GameDev.net audience, in your journey to design, develop, and market your next game. The free ebook is available through CRC Press by clicking here. The Curated Books The Art of Game Design: A Book of Lenses, Second Edition, by Jesse Schell Presents 100+ sets of questions, or different lenses, for viewing a game’s design, encompassing diverse fields such as psychology, architecture, music, film, software engineering, theme park design, mathematics, anthropology, and more. Written by one of the world's top game designers, this book describes the deepest and most fundamental principles of game design, demonstrating how tactics used in board, card, and athletic games also work in video games. It provides practical instruction on creating world-class games that will be played again and again. View it here. A Practical Guide to Indie Game Marketing, by Joel Dreskin Marketing is an essential but too frequently overlooked or minimized component of the release plan for indie games. A Practical Guide to Indie Game Marketing provides you with the tools needed to build visibility and sell your indie games. With special focus on those developers with small budgets and limited staff and resources, this book is packed with tangible recommendations and techniques that you can put to use immediately. As a seasoned professional of the indie game arena, author Joel Dreskin gives you insight into practical, real-world experiences of marketing numerous successful games and also provides stories of the failures. View it here. An Architectural Approach to Level Design This is one of the first books to integrate architectural and spatial design theory with the field of level design. The book presents architectural techniques and theories for level designers to use in their own work. It connects architecture and level design in different ways that address the practical elements of how designers construct space and the experiential elements of how and why humans interact with this space. Throughout the text, readers learn skills for spatial layout, evoking emotion through gamespaces, and creating better levels through architectural theory. View it here. Learn more and download the ebook by clicking here. Did you know? GameDev.net and CRC Press also recently teamed up to bring GDNet+ Members up to a 20% discount on all CRC Press books. Learn more about this and other benefits here.


  • Content count

  • Joined

  • Last visited

Community Reputation

136 Neutral

About Marco81

  • Rank
  1. OpenGL

    Issuing draw calls per quad can quickly become a CPU bottleneck, especially on older machines. Follow the advice of SimonForsman, focus on batching multiple quads that use the same texture in a single VBO. This should greatly improve your performance on older computers.
  2. My goal is to create a program that displays a skeletal based model, with the possibility to select individual bones and make them longer or shorter. This will be part of a character customization system. What I'm currently doing is applying a scaling matrix in bone space that scales the bone along the X axis (its length axis). This works, but also scales every bone connected to the scaled bones (which makes sense in a bone hierarchy). I need a method to cancel out the scaling for the connected bones. I tried applying the inverse of the scaling, but this seems to introduce skewing in the connected mesh. Does anybody know how to go about this, or knows about good resources dealing with this particular problem? Either my googling skills aren't that good or this is a technique that isn't being used often. Any help is greatly appreciated. Marco.
  3. AFAIK GLSL doesn't know that you haven't bound a texture to the sampler, causing it to use black as the texture color. A solution could be to use a different shader for single texturing. Alternatively if you want to use only 1 shader you can bind a small white texture (1x1) to GL_TEXTURE1 when you only have one regular texture.
  4. Quote:Original post by Tom KQT I just add two thoughts as addition to Marco's second post (not correcting him, just specifying): - Those two draw commands will be axactly the same, you don't need to sub-set your mesh any special way. - This simple solution will work also for "complex" meshes as long as they are convex. It won't work properly for concave meshes. Now the question is how "complex" a convex mesh can be :D Thanks that's exactly what I meant, but clearer ;-)
  5. My solution was as follows: -> Turn on front face culling -> Draw cube (this will always draw the inside of the cube) -> Turn on back face culling -> Draw cube (this will draw outside of the cube) However this solution is only suitable for relatively simple shapes such as cubes. If your meshes are more complex you need more advanced solutions to achieve correct transparent rendering. Using simple submeshes and sort them is possible, you can also look into more advanced techniques such as depth peeling. For more information: NVIDIA website
  6. In your transparency pass, render the back faces first (cull front faces) and render the front faces after that (cull back faces). If you just disable culling the render order depends on the order of the faces in the mesh (so sometimes it looks correct and sometimes it doesn't). Also you mention front2back, I assume you meant back-to-front for the transparency pass?
  7. Both OpenGL and Direct3D are perfectly suited for your needs. Since you're targeting PC, you might need ask yourself if you really only want to target Windows. If there is a small possibility you ever want to provide your applications on Linux, you're probably better prepared using OpenGL. Otherwise it's a matter of taste and familiarity, nothing more. I've worked a decent amount of time with DirectX and recently started using OpenGL professionally. Here's my experience so far: Pros: - OpenGL is better suited for quickly hacking some test code using immediate mode - It will run on nearly every platform (Windows, Mac, Linux, mobile (OpenGL ES)) - Transition from HLSL to GLSL was painless Cons: - I hate the fact that parameters are not strongly typed (everything is GL(u)int). It's really easy to type GL_LINE instead of GL_LINES without the compiler catching it. Also IntelliSense is fairly useless if you get everything starting with GL_ not just the relevant ones. - Up to date reference documentation is hard to find. I really like the directx.chm help file from the DirectX SDK. I haven't found a decent alternative for OpenGL. (Yes, I've got the red & orange books on my desk :-) - I don't like it that the driver determines which version is supported. You need to make users update their drivers if you want to program for a specific OpenGL version. - It's hard to find development tools that are as well integrated and work as well as those provided in the DirectX SDK (PIX for example). (Although this is more a Linux issue) If I'm horribly wrong on any of these issues, please let me know.
  8. Quote:Original post by Juanxo Why he can't use glColor3f() before draw each cube? i think this way he don't need to use a vbo for colors and he just need to store a color for each cube, and he can sort cubes by color or something similar Because the glColor** functions are deprecated and are not available anymore in OpenGL core profile. To be future compatible it's better to use VBOs for everything.
  9. You can download a digital version here. It's not free unfortunately.
  10. In NetBeans go to project properties -> Run. For Console Type choose "Output Window". This way your output should appear in your IDE instead of in a separate console window.
  11. OpenGL

    You should have a look at freeglut.
  12. You are casting the color information, which is in RGBA (8 bits per pixel) to a D3DXVECTOR4 which consists of 4 32 bit floating point values. Each pixel is thus interpreted as a single float and I'm pretty sure that's not what you want.
  13. OpenGL

    Strange, it should be working now. I cannot really draw any useful conclusion from your screenshot. A better test case would be a big rotating white triangle against a black background. You should definitely see the difference there (Aliasing issues are most noticeable on moving objects).
  14. OpenGL

    What are the values of GL_SAMPLE_BUFFERS and GL_SAMPLES? GLint buffers(0); GLint samples(0); glGetIntegerv(GL_SAMPLE_BUFFERS, &buffers); glGetIntegerv(GL_SAMPLES, &samples); If GL_SAMPLES is greater than 1 you should be able to enable multisampling with glEnable(GL_MULTISAMPLE).
  15. Using fps to measure performance is not ideal, especially if you are trying to optimize rendering. Carefully timing the parts of the code you are trying to optimize is much better. Read more about it here (if you're interested ;-)