Jump to content
  • Advertisement

MoeTM

Member
  • Content Count

    9
  • Joined

  • Last visited

Community Reputation

190 Neutral

About MoeTM

  • Rank
    Newbie

Personal Information

  • Interests
    |programmer|
  1. Okey i tried on my onboard intel chip and it works :D, now the question is what causes it on the nvidia card not to work :D Also my shaders are all with these flags compiled:  D3DCOMPILE_IEEE_STRICTNESS | D3DCOMPILE_ENABLE_STRICTNESS | D3DCOMPILE_WARNINGS_ARE_ERRORS | D3DCOMPILE_DEBUG;   I made some tests and i think this behaviour is somehow caused by the ddx and ddy and fwidth functions, could that be possible?   Okay i solve the problem by myself, somehow the ddx and ddy used internally (i guess) the ddx_coarse and ddy_coarse, but i  use ddx_fine and ddy_fine, it works fine :D. Can i somehow force the shader compilation to pick ddx_fine and ddy_fine?
  2.   yes I think that the debugger that a bit more security layers than the release/normal mode. The thing is i change some thinks around the font rendering e.g. texture loading, the graphic context generation etc. but the rendering itself, is unchanged and worked some time ago in release mode as well. So i think i might have corruped some memory or i have some state corruption, but I dont know how to find out where :( I already have simplyfied my code a lot but the problem remains. Are there debug features from dx which are normally not activated, like an security mode or something?   Also you can see strong arifacts, which are only in y direction, this looks really strange to me?!
  3. Hi,   i have a serious problem with my engine, but i dont know where to locate the problem. The actual problem is that when I create a dx11 device context normally, my font rendering is messed up an looks ugly (see attached pictures) but when I run the vs graphic debugger with my engine, the engine is unnormal slow (in the past is was not so slow while debugging, now it's times 100 slower) but shows correct results (see attached pictures). So now i am a bit lost to find the reason for this behaviour, since the debug results look correct?! Does someone have hint where to look for this problem?   And i should mention that, the graphics debugger does not output any warnings or errors, everything runs just fine, like the other effects in the engine.   thx Moritz  
  4. Hello,   I recently put my directx contex creation to a dll und thereby i also wanted to upgrade my directx version. But i have some question regarding the version and how to use it properly.   1. Which version should i use to develop, version 11.3 (i need conservative rasteration) or 12 regarding driver robustness and cleanness of the api and does 11.3 hardware support 12 aswell? 2. If i want to use directx 11.3 and is not supported, though i use it partially using directx 11.2, how do i usefully call my directx functions.I mean i have an ID3D11Device2 or an ID3D11Device3. 3. If i use directx 11.3, can i combine/mixup calls like PSSetConstantBuffers and PSSetConstantBuffers1  
  5.   Yes, but how do I render them using integers, is it possible to output the 'target pixel index' from the vertex shader? I thought i could only output SV_Position which is in range -1 and 1 for xy and 0 and 1 for z. Okay thankts i could solve the problem using integers in the appendbuffer, thanks for that :) But anyways, is there another way than output in frustum (-1 1) coordinates, e.g. maybe set the viewport to (-1 1)?       Yes exactly     And another small question, it is not problem to use an appendStructuredBuffer to insert the locations and the during the rendering just bind it as an structedbuffer and read from location given by SV_VertexID instead of using the ConsumeStructuredBuffer and use consume?
  6.   Ah, sorry it is float4(projected.xyz, float(z)) and projected just after division by w
  7. Alright as you pointed out it is faster to render the pixels to mark into the stencil masks. But i have one problem doing that, with this technique i have two way the pixels are marked. The frist is the compute shader which writes the data, later needed, to an uav with the same dimensions as the viewport, i am masking on a second way using the stencil buffer. My problem is that they do not 100% match. Here is some code for clearification:   RWTexture2DArray<uint> pointer : register(u1); AppendStructuredBuffer<float4> pixelMark : register(u3);   ...   float4 projected = mul(float4(position, 1.0), mCameraWorldProjectionGS[z]);   projected /= projected.w; projected = Frustum2TextureSpace(projected);   int2 xy = projected.xy * textureDimensions.xy; int z = LightDirectionDetermineView(depth, g_fLightDirection_BasePow, g_fLightDirection_Far, g_Camera_vProps.w, NUM_PROJECTION);   pixelMark.Append(positionIndex); // store pixel for later create stencil mask pointer[int3(xy, z)] = uint4(1, 1, 1, 1);   i am not sure that xy is calculated correctly. Here you can see the result, there is one pixel that does not match, the upper is the data written by the compute shader and the other is the stencil buffer. I render to the stencil buffer using DrawInstancedIndirect.   The frustum coordinates of of the error pixel are from the projection: -0.372919900 -0.142580700 0.305269900 1.0 after division by w The index the compute shader writes to is therefore: 321.0650112 585.0013184 though int3(321 585 1) The frustum coordinates are written in markPixel and later rendered by DrawInstancedIndirect, but the pixel 321 585 1 gets never written, is that an rounding error or something in the viewport transfrom i have not encounted?  
  8. Thank you for fast answere, that was what expected.
  9. Hello,   I want to accomplish to write into a stencil mask from a compute, at the moment i generate a vertex buffer witht the locations i want to write to and simply render it to the stencil mask. But i want to write to the stencil buffer directly or indirecty and use copyresource. My problem is now that i cannot find a depth stencil format for which i can create a compatible format i can use for copyresource.   Thanks for help
  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!