Comments (11)
The menu graphics are also very glitchy, sometimes they don't appear or are flickering. I don't know if it's related.
from dota-2.
Looks like we use a few extensions that are not supported by the radeonsi driver yet. We could do a better job of detecting that and failing to start, but I would let the Mesa people know about this regardless.
from dota-2.
glScissor returning INVALID_VALUE means that negative width/height are being passed in. Mesa should support ARB_sso on all drivers, but it's one of the less-tested extensions (or rather, one of the ones with the biggest test surface), so the glUseProgramStages thing could happen for a million different reasons.
from dota-2.
FWIW this is the code that generates the sso error. I'm in the process of getting the game, so I can't tell if these conditions are actually met and it's correctly returning that error or not.
/* Section 2.11.4 (Program Pipeline Objects) of the OpenGL 4.1 spec
* says:
*
* "If the program object named by program was linked without the
* PROGRAM_SEPARABLE parameter set, or was not linked successfully,
* the error INVALID_OPERATION is generated and the corresponding
* shader stages in the pipeline program pipeline object are not
* modified."
*/
if (!shProg->LinkStatus) {
_mesa_error(ctx, GL_INVALID_OPERATION,
"glUseProgramStages(program not linked)");
return;
}
from dota-2.
I don't have a setup that can reproduce this, but if you find any problems with the engine's use of ARB_sso let us know!
from dota-2.
I've created an apitrace for anyone interested
https://idontevenlift.no-ip.org/dota2.trace.xz
Edit: Here is a better trace with a Mesa bug fixed
https://idontevenlift.no-ip.org/dota2_patched.trace.xz
Thanks,
sarnex
from dota-2.
OK, so the sso failures were mesa's bad. Patch available at http://patchwork.freedesktop.org/patch/52603/ . Will merge soonish unless people point out some issue.
However the glScissor errors are pretty unambigiously Dota 2 Reborn's bad. You can see this yourself in the trace... just a few examples below, but there are tons:
764104 @1 glScissor(x = 1, y = 0, width = -1, height = 65573)
748602 @1 glScissor(x = -16313741, y = -16313738, width = -16313741, height = -1643902141)
742166 @1 glScissor(x = 48, y = 53, width = -1, height = 65589)
724556 @1 glScissor(x = -16313741, y = -16313738, width = -16313741, height = -1643902141)
These happen a ton in the trace, and either width or height being negative is illegal in GL.
from dota-2.
One thing to note is that the radeonsi driver doesn't support ARB_viewport_arrays, and you're querying MAX_VIEWPORTS and getting 0 back, so perhaps you're looping over # of viewports somewhere and so you end up not setting anything? Just a guess based on an observation airlied made on IRC.
from dota-2.
Yes, the viewport array issue is exactly what you describe, we are not checking for the presence of the extension.
from dota-2.
I've checked in a fix for the GL_ARB_viewport_array issue and confirmed it can cause uninitialized scissor values (as well as viewport values). The fix will be in the next update.
from dota-2.
The viewport errors should be resolved in the 6/25 update.
from dota-2.
Related Issues (20)
- When typing number on numpad area, numbers have additional symbol(s) added after them. HOT 17
- DCP PANIC after tonight's update
- [Linux] Dota crashing just after launch with Kernel 6.9rc5 HOT 28
- [LINUX] Engine behaves as if in no_focus_sleep mode, but only when focused (locked at unplayable fps unless window focus is lost)
- Cant play online matches with proton experimental on linux system because of VAC HOT 1
- About Dota2 startup vulkan error. HOT 1
- Dota 2 Crashing Instantly on Startup HOT 2
- Dota2 Hero Selection phase - No heroes are visible
- Dota always crashes instantly after updating to Fedora 40 (previously stable on 39) HOT 3
- [Fedora Linux] Dota wont launch HOT 2
- [Linux] Game not capturing mouse on multi-monitor setup HOT 6
- [Linux] Failed to initialize Vulkan HOT 1
- [Linux] no audio after update HOT 30
- [Linux] crash freeze new patch 7.36 HOT 9
- [Linux] Game fails to load on Patch 7.36 HOT 3
- [Linux] Dota 2 no longer starting after update HOT 20
- [Linux] Dota2 launches on wrong monitor since 7.36 HOT 8
- WebApi - IDOTA2Match_570/GetMatchDetails returning 500 Internal Server Error after 7.36 release HOT 33
- [Linux] Matchmaking cooldown after accepting match
- Game crashes at a certain point at the same place HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dota-2.