• 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

387 Neutral

About pbobzebuilder

  • Rank

Personal Information

  • Location
  1. OpenGL

    Thanks a lot !   glGetProgramResourceName, glGetActiveAttrib, glGetActiveUniform... will do the job. 
  2. Anyone knows if there's an equivalent to D3DReflet for Opengl ?   D3dReflect allows to Query the shader needs after compilation.  
  3. Thanks to take the time helping me :)   I haven't tried to precompute values by the CPU but it could reduce the artifacts if precomputed using doubles.... I'll give it a try :)   My terrain is actually a 1:1 scale planet. My normals are computed in object space which explain the matrix (Used to transform my normals from planar heightmap to sphere).   Coordinates passed to my noise function are between -1, 1 at quadtree-depth = 0. May be I could try another scale to limit f32 precision issues.
  4. My problem comes much from where the heightmap comes from. I create an heightmap for each leaf of my quadtree. As I go deeper in the quadtree subdivision, I continuously create heightmap based on miscellanous noise functions. At a given depth (about 14 subdivs) the input coordinates for the noise are too small for a 32 bits float (I'm doing it with the GPU). This precision issue leads to really bad artifacts in the normal map.   Nothing strange about the way normals are computed. There's multiple ways to compute normals. Here I choose a fast and simple shortcut. I Could have used something like sobel filter but it takes more computations and more sampling from the heightmap. Instead, I only do the difference between the top and above Heights for one axis and the difference between left and right Heights for another axis. Given a Y axis = 2.0 for a quadtree depth of 0 I'll have Y=1 for Depth=1; Y=0.5 for Depth=2, Y=0.25 for Depth=3 and so on... (here is why the 1<<pTreeNode->GetDepth() is for.)
  5. For a terrain & if your normal map is computed from a heightmap, you can use world space normal maps. Your normalmap will only be used on the terrain (tangent space allow you to use your normal map on any geometry).
  6. Been trying all the day to get around the problem without any success. I think I'll bypass the precision issue by setting the maximum quadtree-depth of the normal map to 14.   I'll be happy to discuss with anyone having similar problems.
  7. Just checked my UVs but those are correct.  I keep digging the Normal Calculation, but I think I was wrong and my real problem is my noise function reaching the limits of float.   Question is: How to generate good looking NormalMaps from HeightMaps generated on the GPU at ground level.
  8. I think it's definitely a precision problem from the GPU to deal with too small values from the HeightMap.     If anyone have a clue for me
  9. Hi,   I'm actually working on terrain rendering based on quadtree & GeoMip Terrain. I've implemented normal maps generation by the GPU and everythings works fine except I'm getting artifacts near the ground. I Get lines (cf screenshot) after the normal calculation wich is certainly a precision issue.  Heightmaps are 256^2, and shows no artifacts. Normal Maps are 256^2 and artifacts shows at ground level (Quadtree depth is 16 and above.)  Both are R32G32B32A32_FLOAT textures.     If anyone has an idea or experienced those kind of artifacts, I'll be grateful     Here is my normalMap HLSL code (with scale coming from CPU : f32 scale = 1<<pTreeNode->GetDepth(); );     float2 uv = input.tex0; float3 sphere = heightMap.Sample(heightMapSamplerState, uv).xyz; float hpix = PixelSize; float normalStrength = 0.5;   float l = heightMap.Sample(heightMapSamplerState, uv + float2( -hpix, 0)).w; float r = heightMap.Sample(heightMapSamplerState, uv + float2( hpix, 0)).w; float t = heightMap.Sample(heightMapSamplerState, uv + float2( 0,   hpix)).w; float b = heightMap.Sample(heightMapSamplerState, uv + float2( 0,  -hpix)).w; float tanZ = (t-b); float tanX = (l-r); float tanY = 2.0 / (scale*normalStrength); float3 normal = normalize(float3(tanX, tanY, tanZ)) * 0.5 + 0.5; float ny = normal.y;   float3x3 mat = BuildRotationMatrix(sphere, float3(0.0f, 1.0f, 0.0f)); normal = mul(normal.xzy, mat); //FaceMatrix   return float4(normal, ny);