• 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

1027 Excellent

About MausGames

  • Rank

Personal Information

  1. Xycaleth already mentioned you are using the flags wrong, check out his links. To increase readability you can also static-cast the returned pointer only once, and access him like a float-array.   For advanced information about buffer transfers I can recommend this GL 4.2 article: http://www.seas.upenn.edu/~pcozzi/OpenGLInsights/OpenGLInsights-AsynchronousBufferTransfers.pdf
  2. OpenGL

    According to the OpenGL 4.5 spec on chapter 18.3 Copying Pixels:     So copying between the same FBO should work, as long as the regions do not overlap (which should not be the case between attachment 0 and 1 (each with own texture)). There is also the function glCopyImageSubData, but again without general-purpose conversions.
  3. From http://www.opengl.org/wiki/Vertex_Specification, which makes sense:  
  4. You are missing glVertexArrayAttribBinding (GLuint vaobj, GLuint attribindex, GLuint bindingindex) to bind an attribute (index) to a vertex buffer binding (index).   Also check all function definitions again so you don't mix them up (e.g. second parameter of glVertexArrayVertexBuffer is also the VBO binding index, not the attribute index). void glVertexArrayAttribBinding (GLuint vaobj, GLuint attribindex, GLuint bindingindex); void glVertexArrayVertexBuffer (GLuint vaobj, GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride); void glVertexArrayBindingDivisor (GLuint vaobj, GLuint bindingindex, GLuint divisor); void glEnableVertexArrayAttrib (GLuint vaobj, GLuint attribindex); void glDisableVertexArrayAttrib (GLuint vaobj, GLuint attribindex); void glVertexArrayAttribFormat (GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset); void glVertexArrayAttribIFormat (GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset); void glVertexArrayAttribLFormat (GLuint vaobj, GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset); ... Edit: The last sentence of Issue 31 makes no sense (also it's unresolved), how else should the attribute "know" which VBO it refers to.
  5. OpenGL

    How does this even work? You have one single FBO, you bind it to both targets, then you attach the source texture to GL_COLOR_ATTACHMENT0 of that FBO and then you overwrite it with the destination texture (same FBO) - so you are basically blitting from the destination texture to the destination texture which has undefined behavior. There is no separate READ and DRAW attachment inside the (single) FBO container.
  6. Do you use glBegin and glEnd ? Many operations are invalid between those functions - glBindTexture for example returns an GL_INVALID_OPERATION error. Maybe glEnable and glDisable have a similar behavior. Edit: Found an old Link to this topic: http://www.gamedev.net/topic/83150-glbindtexture-inside-of-glbegin/ Best regards - Martin
  7. OpenGL

    Your glVertex3f-calls look weird. You are drawing quads which get bigger and bigger and this results in z-fighting like on your screenshot. For example: with (-tileSize*i) you are going left but with (tileSize*i)+tileSize you are going right and therefore stretching the whole quad with each iteration. Reconsider how you have to place your vertices in order to achieve your goal - try to remove the minus-operators. Later on you can try to draw triangle-strips which are faster than quads, and even use indices and vertexbuffers. Best regards - Martin
  8. http://www.opengl.org/sdk/docs/man2/xhtml/glFrustum.xml glFrustum — multiply the current matrix by a perspective matrix Before applying the frustum-matrix you have to reset the matrix first (glLoadIdentity), push and pop it (glPushMatrix, glPopMatrix) or use some other method (e.g. glLoadMatrix) Edit: Or more likely you are using glFrustum wrong. The docs say void glFrustum(left, right, bottom, top, nearVal, farVal) - in your example code you are not in the center with your matrix. - Martin
  9. Usually the transformation is calculated outside of the shader, because the shader has to do it repeatedly for each vertex and you have a much better control of the calculations this way. You can also optimize it (e.g. with SSE) for max performance and so the CPU and GPU work perfectly side by side. There is a nice article from Jari Komppa about this topic: http://sol.gfxile.net/instancing.html Best regards - Martin
  10. You can calculate the length of both: sqrt( x*x + y*y + z*z ) = length thats basically the speed in your example, but... if you want to calculate the force, you should get the dot-product between the normalized velocities and the normalized position-difference (during collision): norm( pos1 - pos2 ) = diff dot( - diff, norm( v1 ) ) = strength1 dot( + diff, norm( v2 ) ) = strength2 and multiply it with the speed/length value (and maybe with a object-mass). Maus btw: http://www.gamedev.net/topic/625147-car-collision-speeds/