• 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

129 Neutral

About safiullahhussaini

  • Rank
  1. DX11

    I always found the DirectX 11 to be simpler to set up. But if the intent is to get something simple up and running, you have to write shader code. Which although is not a bad thing, just that you have to do some household work in the project.<br /><br />DirectX 9, although you are going to call more APIs, you will only be writing in C, not HLSL (if you are doing something simple, and not writing shaders).<br /><br />HLSL is pretty simple to learn but if you are against learning a slightly different programming paradigm, use DX9. So I think it boils down to whether you can or you want to write shaders.
  2. Again may be a rookie question, and I think I ve read about this somewhere in a book on Direct3D 11, but I just wanted to confirm. Is it possible to stream out pointlist instead of triangle lists from the Tesselation stages (Hull and Domain Shaders) from a four control point list? And I dnt know if this is a valid question either or whether I should be asking it here, but how does OpenGL fare in this regard? I have heard from a friend that something like this is possible in OpenGL, so if it is, does the hardware support it? Is this a Direct3D limitation (for performance reasons or something)? Thanks in advance.
  3. Problem fixed, it was a rokkie mistake I suppose, I was not properly setting the Resources to the Shader... or something like that. Thanks a bunch MJP... BTW your book is AWESOME!!!
  4. This is the PIX report on my vertex shader, seems like the Buffer is binding correctly (At least the strides match). [source lang="java"]// // Generated by Microsoft (R) HLSL Shader Compiler 9.29.952.3111 // // // Buffer Definitions: // // Resource bind info for VertexBuffer // { // // struct // { // // float4 position; // Offset: 0 // float4 color; // Offset: 16 // // } $Element; // Offset: 0 Size: 32 // // } // // Resource bind info for InstanceBuffer // { // // struct // { // // float4x4 matLocation; // Offset: 0 // int strTemplateType; // Offset: 64 // // } $Element; // Offset: 0 Size: 68 // // } // // // Resource Bindings: // // Name Type Format Dim Slot Elements // ------------------------------ ---------- ------- ----------- ---- -------- // VertexBuffer texture struct r/o 0 1 // InstanceBuffer texture struct r/o 1 1 // // // // Input signature: // // Name Index Mask Register SysValue Format Used // -------------------- ----- ------ -------- -------- ------ ------ // SV_VERTEXID 0 x 0 VERTID uint x // // // Output signature: // // Name Index Mask Register SysValue Format Used // -------------------- ----- ------ -------- -------- ------ ------ // SV_POSITION 0 xyzw 0 POS float xyzw // COLOR 0 xyzw 1 NONE float xyzw // vs_4_0 dcl_globalFlags refactoringAllowed | enableRawAndStructuredBuffers dcl_resource_structured t0, 32 dcl_resource_structured t1, 68 dcl_input_sgv v0.x, vertex_id dcl_output_siv o0.xyzw, position dcl_output o1.xyzw #line 82 "C:\Users\Safiullah\Documents\Visual Studio 2010\Projects\RayTracingAttempt\Debug\RTShaders.fx" ld_structured o0.xyzw, v0.x, l(0), t0.xyzw // VS<0,1,2,3> ld_structured o1.x, l(0), l(0), t1.xxxx // VS<4> ld_structured o1.y, l(0), l(20), t1.xxxx // VS<5> ld_structured o1.z, l(0), l(40), t1.xxxx // VS<6> ld_structured o1.w, l(0), l(60), t1.xxxx // VS<7> #line 105 ret // Approximately 6 instruction slots used [/source]
  5. Just Mad the changes but no luck... Right now, my ElementCount is 1, is that a problem?
  6. Hi I am new here so I dont know if this is a common n00b problem. So I am creating my structured buffer like this [source lang="cpp"]HRESULT CRenderer::CreateStructuredBuffer ( unsigned int arg_dElementCount, unsigned int arg_dElementSize, void * arg_pData ) { HRESULT status = S_OK; D3D11_BUFFER_DESC objBufferDesc; D3D11_SUBRESOURCE_DATA objInitData; D3D11_SHADER_RESOURCE_VIEW_DESC objResViewDesc; ZeroMemory(&objBufferDesc, sizeof(objBufferDesc)); ZeroMemory(&objInitData, sizeof(objInitData)); ZeroMemory(&objResViewDesc, sizeof(objResViewDesc)); objBufferDesc.ByteWidth = arg_dElementCount * arg_dElementSize; objBufferDesc.StructureByteStride = arg_dElementSize; objBufferDesc.MiscFlags = D3D11_RESOURCE_MISC_BUFFER_STRUCTURED; objBufferDesc.BindFlags = D3D11_BIND_SHADER_RESOURCE; objBufferDesc.Usage = D3D11_USAGE_DEFAULT; objBufferDesc.CPUAccessFlags = 0; objInitData.pSysMem = arg_pData; this->m_dxStructuredBufferArray.push_back ( NULL ); status = this->m_dxDevice->CreateBuffer ( &objBufferDesc, &objInitData, &(this->m_dxStructuredBufferArray[this->m_dNumOfStructuredBuffers++]) ); if (FAILED(status)) { return status; } objResViewDesc.Format = DXGI_FORMAT_UNKNOWN; objResViewDesc.ViewDimension = D3D11_SRV_DIMENSION_BUFFER; objResViewDesc.Buffer.ElementOffset = 0; objResViewDesc.Buffer.ElementWidth = arg_dElementSize; objResViewDesc.Buffer.FirstElement = 0; objResViewDesc.Buffer.NumElements = arg_dElementCount; this->m_dxResourceViews.push_back ( NULL ); status = this->m_dxDevice->CreateShaderResourceView ( this->m_dxStructuredBufferArray[this->m_dNumOfStructuredBuffers-1], &objResViewDesc, &(this->m_dxResourceViews[this->m_dNumOfStructuredBuffers-1]) ); if (FAILED(status)) { return status; } return status; }[/source] And I am calling it like this [source lang="cpp"] status = objRenderer.CreateStructuredBuffer ( objWorldReader.GetInstanceCount ( ), sizeof(SInstance), objWorldReader.GetInstances ( ) ); if ( FAILED(status) ) return 1; [/source] But it seems when I view the buffer in PIX in a simple passthrough Shader, I just see zeros. Now I know the structure may need to be 16 byte aligned since I encountered a similar problem before, so I have declared my structure like this. [source lang="cpp"]struct SInstance { __declspec(align(16)) XMMATRIX matLocation; int dTemplateType; }; [/source] But now I really dont know what's going on and I am really out of my depth. Please Help!!!!
  7. Hi, This might be a weird and stupid question but it has me stumped for a while. I have made this new input device which I can use in many of applications (The ones I have written) cuz it uses a simple serial port. I would like to get this device to be used as my main input devices in the games that I play. How do I get about this? Do I need to learn to write device drivers? If so, where do I start, I downloaded the WDK (Windows Driver development Kit) and been reading up on it but it sounds like French to me. They talk about a lot of models and stuff which I do understand but it does nt tell me where to start writing code for it and plugging in my already written code. Please Help, Safi