Jump to content

Daft Mugi

Member
  • Posts

    150
  • Joined

  • Last visited

Reputation

39 Good

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Yes, these are the very first frames. Same issue with "com_smp 0". Yes, r10199 currently.
  2. Screenshots from qapitrace, MSAA 2x. MSAA 2x In case it matters, the visible distortion is on frames 1 and 2 as the GL_BACK framebuffer. GL_DEPTH_COMPONENT and GL_STENCIL_INDEX framebuffers look distorted as well. Frame 1 is the first frame to have shaders, glprogs/tonemap.fs and glprogs/tonemap.vs. Frame 2 is the frame I notice on thedarkmod.x64 launch. Frames 0 and 3 GL_BACK framebuffers look ok, but their GL_DEPTH_COMPONENT and GL_STENCIL_INDEX framebuffers look distorted. MSAA off Frame 2 does not have a distorted GL_BACK framebuffer; its GL_DEPTH_COMPONENT and GL_STENCIL_INDEX framebuffers look distorted. Frame 1 GL_BACK framebuffer looks similar to frame 1 when MSAA 2x. (Screenshots MSAA 2x)
  3. This happens during game launch and not mission startup, if mission startup means entering the game world. This happens before the main menu is displayed for the first time. I've attached a series of screenshots. Does FBO code run before the main menu displays for the first time? I tried these settings and did not see any difference in console output. To me, it looks like that first frame is showing garbage memory - whatever happens to be in memory at the time. In other words, it seems that the "qglRenderbufferStorageMultisample()" function is not clearing/initializing the buffers before rendering. I'm not a graphics programmer, so I don't know. That's how it seems to me. Maybe an updated Glad library would have a fix? I tried running apitrace. Here's some output: apitrace: loaded into ./thedarkmod.x64 apitrace: redirecting dlopen("libGL.so.1", 0x1) from ./thedarkmod.x64 apitrace: tracing to application.trace apitrace: redirecting dlopen("libGL.so.1", 0x102) from ./thedarkmod.x64 apitrace: warning: unknown function "glRenderbufferStorageMultisampleAdvancedAMD" apitrace: warning: unknown function "glNamedRenderbufferStorageMultisampleAdvancedAMD" apitrace: warning: unknown function "glPolygonOffsetClamp" apitrace: warning: unknown function "glEGLImageTargetTexStorageEXT" apitrace: warning: unknown function "glEGLImageTargetTextureStorageEXT" apitrace: warning: unknown function "glGetUnsignedBytevEXT" apitrace: warning: unknown function "glGetUnsignedBytei_vEXT" apitrace: warning: unknown function "glDeleteMemoryObjectsEXT" apitrace: warning: unknown function "glIsMemoryObjectEXT" apitrace: warning: unknown function "glCreateMemoryObjectsEXT" apitrace: warning: unknown function "glMemoryObjectParameterivEXT" apitrace: warning: unknown function "glGetMemoryObjectParameterivEXT" apitrace: warning: unknown function "glTexStorageMem2DEXT" apitrace: warning: unknown function "glTexStorageMem2DMultisampleEXT" apitrace: warning: unknown function "glTexStorageMem3DEXT" apitrace: warning: unknown function "glTexStorageMem3DMultisampleEXT" apitrace: warning: unknown function "glBufferStorageMemEXT" apitrace: warning: unknown function "glTextureStorageMem2DEXT" apitrace: warning: unknown function "glTextureStorageMem2DMultisampleEXT" apitrace: warning: unknown function "glTextureStorageMem3DEXT" apitrace: warning: unknown function "glTextureStorageMem3DMultisampleEXT" apitrace: warning: unknown function "glNamedBufferStorageMemEXT" apitrace: warning: unknown function "glTexStorageMem1DEXT" apitrace: warning: unknown function "glTextureStorageMem1DEXT" apitrace: warning: unknown function "glImportMemoryFdEXT" apitrace: warning: unknown function "glGetUnsignedBytevEXT" apitrace: warning: unknown function "glGetUnsignedBytei_vEXT" apitrace: warning: unknown function "glGenSemaphoresEXT" apitrace: warning: unknown function "glDeleteSemaphoresEXT" apitrace: warning: unknown function "glIsSemaphoreEXT" apitrace: warning: unknown function "glSemaphoreParameterui64vEXT" apitrace: warning: unknown function "glGetSemaphoreParameterui64vEXT" apitrace: warning: unknown function "glWaitSemaphoreEXT" apitrace: warning: unknown function "glSignalSemaphoreEXT" apitrace: warning: unknown function "glImportSemaphoreFdEXT" apitrace: warning: unknown function "glWindowRectanglesEXT" apitrace: warning: unknown function "glMaxShaderCompilerThreadsKHR" apitrace: warning: unknown function "glAlphaToCoverageDitherControlNV"
  4. I narrowed down this issue to the following line when msaa is "2" or greater: // Line 226:renderer/FrameBuffer.cpp qglRenderbufferStorageMultisample(GL_RENDERBUFFER, msaa, format, width, height); In the function, "FrameBuffer::AddRenderBuffer()": 217 void FrameBuffer::AddRenderBuffer( GLuint &buffer, GLenum attachment, GLenum format, const idStr &name ) { 218 if (buffer != 0) { 219 qglDeleteRenderbuffers(1, &buffer); 220 } 221 qglGenRenderbuffers(1, &buffer); 222 qglBindRenderbuffer(GL_RENDERBUFFER, buffer); 223 GL_SetDebugLabel( GL_RENDERBUFFER, buffer, name ); 224 225 if (msaa > 1) { 226 qglRenderbufferStorageMultisample(GL_RENDERBUFFER, msaa, format, width, height); 227 } else { 228 qglRenderbufferStorage(GL_RENDERBUFFER, format, width, height); 229 } 230 231 Bind(); 232 qglFramebufferRenderbuffer(GL_FRAMEBUFFER, attachment, GL_RENDERBUFFER, buffer); 233 } As I stated in the first post, this issue is not present when "r_multiSamples 0". So, the following code path is fine: // Line 228:renderer/FrameBuffer.cpp qglRenderbufferStorage(GL_RENDERBUFFER, format, width, height); Also, if "qglRenderbufferStorageMultisample()" is called with msaa as "0", that is also fine. // Line 226:renderer/FrameBuffer.cpp qglRenderbufferStorageMultisample(GL_RENDERBUFFER, 0, format, width, height); I guess this is a bug in the Glad library. I found this by commenting out code related to "r_multiSamples" and narrowed it down. @duzenko @stgatilov What's a good next step?
  5. The attached screenshot is what I'm getting with 2.11, which looks like your 2.10 screenshot to me. Does the attached screenshot look right to you? If so, I wonder what is causing it not to look right for your setup. I'm using Linux with AMD GPU.
  6. This is fixed as of r10197, so it should work fine once beta 2 is released.
  7. I was actually going to post about this graphical glitch at some point. Sometimes a scene distorts for a moment, and I do tend to notice it happening towards the start of a map. Sure enough, when I notice it happen, there's a console log about the vertex cache resize. Hazard Pay had the following: Resizing dynamic VertexCache: index 8192 kb -> 8192 kb, vertex 8192 kb -> 16384 kb So, I've set the following for now as I test more: seta r_frameIndexMemory "8192" seta r_frameVertexMemory "16384" Is there a reason that "r_frameIndexMemory" and "r_frameVertexMemory" are not set higher than 4096 by default?
  8. Tested out r10198. Thank you for fixing screenshots!
  9. @datiswous Ah, well, I thought I might be answering the wrong question. I missed the 10190 written above.
  10. #10189 is the beta 1 release. #10190 and above are SVN code revisions. These are not released as downloadable builds, which means one would have to build the source code and have the corresponding assets to use a non-released revision. At some point, a new beta will be released with a chosen revision. The current SVN revision is #10197, so the next beta release will likely be greater than that. Edit: Welp, I missed "beta211-01 (rev 16656-10190)" mentioned above. Answered the wrong question.
  11. I found two objects with missing textures in 2.11 beta 1 (also, missing in earlier 2.11 dev asset versions). They look fine using 2.10 assets. Are these actually missing textures or another issue? Hazard Pay. Crumpled note. 2602.16 -275.42 -2215.75 40.6 67.4 0.0 Iris. Trash can. 363.84 1181.95 -381.25 27.4 -142.7 0.0 Is there a way to automate finding these? @AluminumHaste Using your getviewpos screenshot trick. Thanks!
  12. @stgatilov I found an issue with screenshots and r10197. I'm sorry to bother you with this yet again. Artifacts can show behind volumetric lights at the time of a screenshot. The attached screenshot is at Hazard Pay 3197.94 1807.48 337.08 9.5 36.6 0.0. Using stencil shadows, the top circle shows artifacts (from the gate?) and the bottom circle shows that the shadow changed (or at least became darker). Using shadow maps, the top circle artifacts are not present but the bottom circle shadow did change (stencil shadows use shadow maps here as well, so that makes sense). Note: The artifacts can be seen in game at the time of the screenshot, so looking at the resulting screenshot is not necessary.
  13. @Dragofer Could you please also include your script changes here? Because I don't have access to SVN asset revisions. I'm getting the following error message using SVN code builds now: ERROR:Missing 'AI_ENEMY_TACTILE' field in script object 'ai_darkmod_base'
  14. I worked on this today, but I haven't been able to track down the problem yet. I found that the previous message or info about the previous message is not cleared from memory completely. Interesting results happen if: Trigger message. Wait for message to fade out. Save game. Edit "tdm_message.gui" and change "rect" to something else, such as "100,100,206,160". Load game. Trigger next message. (The previous message parchment will blink for a single frame at the previous "tdm_message.gui" "rect" value. The next message parchment will fade in at the current "rect" value.) (See attached screenshot.) It's seems the messages are not being removed from memory after fade out. @duzenko @Obsttorte Any ideas? Are scripts completely controlling this feature? If not, where in the game code is it handled? The following shows the code change made to "guis/tdm_message.gui" for this example to expose part of the issue. // A GUI for showing little messages to the player, used f.i. by the training map: windowDef parchment { - rect 0,-10,206,160 + rect 100,100,206,160 nocursor 1 background "guis/assets/mainmenu/oldparchment_backdrop3" matcolor 0,0,0,0
  15. @AluminumHaste How did you get the viewpos to display in your screenshots?
×
×
  • Create New...