Coder Social home page Coder Social logo

Comments (13)

TheJJ avatar TheJJ commented on April 28, 2024

Probably the shader compilation fails. Can you try to get some error messages? Mesa supports debug environment variables: http://www.mesa3d.org/envvars.html

from openage.

oldlaptop avatar oldlaptop commented on April 28, 2024

I tried setting LIBGL_DEBUG and MESA_DEBUG to "verbose", nothing of real relevance:

libGL: screen 0 does not appear to be DRI3 capable
libGL: pci id for fd 8: 1002:71d4, driver r300
libGL: OpenDriver: trying /usr/lib/x86_64-linux-gnu/dri/tls/r300_dri.so
libGL: OpenDriver: trying /usr/lib/x86_64-linux-gnu/dri/r300_dri.so
libGL: Can't open configuration file ~/.drirc: No such file or directory.
libGL: Can't open configuration file ~/.drirc: No such file or directory.
<lots of openage's spew about loading textures>
<much further down, the same message I reported earlier>

I do see a few messages from openage about '[asset file] not present, ignoring...'; it looks to me like most/all buildings are being loaded correctly though. If you are interested in the full 4 kiloline log, I can post it somewhere.

from openage.

TheJJ avatar TheJJ commented on April 28, 2024

Are you able to get any more info about the r300 FP: Compiler Error you posted first? If we can figure out why the compilation fails, we can probably fix this for radeon cards.

from openage.

oldlaptop avatar oldlaptop commented on April 28, 2024

After some discussion on IRC (thanks especially to mareko in #radeon), the conclusion seems to be that the shader in question (https://github.com/SFTtech/openage/blob/master/assets/shaders/teamcolors.frag.glsl) is more than this particular hardware can handle (although in the process it was discovered that the shader compiler was unrolling loops where it shouldn't). Specifically the hardware doesn't support indexing arrays with non-constant values, and the compiler has to work around that (which gets too wordy with big arrays). mareko did have a suggestion for optimizing the shader for this hardware, though:

[16:22:58] <mareko> oldlaptop: it's definitely indirect addressing, sorry, that shader cannot run on R500, the solution is to set the player_color array as a 1D texture and use texture1D() to read it, that should work
[16:24:08] <mareko> oldlaptop: that's the only way to do indexing to a huge read-only array with a non-constant expression in a fragment shder

from openage.

LeviSchuck avatar LeviSchuck commented on April 28, 2024

Is the solution to make it a compatible shader (and not taking advantage of current hardware?) or to have shader overrides for certain chipsets that fulfill the basic function?

from openage.

jamesmintram avatar jamesmintram commented on April 28, 2024

Gonna look into this as part of #34

from openage.

franciscod avatar franciscod commented on April 28, 2024

are the shaders only being used for painting buildings with the player's color? see #112

from openage.

TheJJ avatar TheJJ commented on April 28, 2024

is this still an issue? mesa should have advanced a lot since back then.

from openage.

TheJJ avatar TheJJ commented on April 28, 2024

stil broken, but at some other place now:

    INFO Loading time  [data]: 476.962 s
    Traceback (most recent call last):
      File "run.py", line 15, in init run (/home/peter/projects/openage/run.cpp:810)
        main()
      File "/home/peter/projects/openage/openage/__main__.py", line 87, in main
        return args.entrypoint(args, cli.error)
      File "/home/peter/projects/openage/openage/game/main.py", line 39, in main
        return run_game(args, assets)
      File "openage/game/main_cpp.pyx", line 20, in openage.game.main_cpp.run_game (/home/peter/projects/openage/openage/game/main_cpp.cpp:845)
        result = run_game_cpp(args_cpp)
      File "libopenage/util/opengl.cpp", line 66, in void openage::util::gl_check_error()
        throw Error(MSG(err) <<
    openage.cppinterface.exctranslate.CPPException: OpenGL error state after running draw method: 1281
            invalid value passed to opengl call

from openage.

TheJJ avatar TheJJ commented on April 28, 2024

Now that we have multiple FBOs and render a Qt GUI into one of them, you may wanna test again :P

from openage.

Linkaan avatar Linkaan commented on April 28, 2024

I get a similar error as above running on a 64bit kubuntu 16.04.1 with a GeForce GTX 460 graphics card. I get invalid operation performed during some state instead of invalid value passed to opengl call. The full error looks like:

INFO [T1] Loading meta file: ./assets/converted/terrain/15001.slp.docx
Traceback (most recent call last):
  File "run.py", line 15, in init run (/home/linkan/openage/run.cpp:891)
    main()
  File "/home/linkan/openage/openage/__main__.py", line 94, in main
    return args.entrypoint(args, cli.error)
  File "/home/linkan/openage/openage/game/main.py", line 47, in main
    return run_game(args, assets)
  File "openage/game/main_cpp.pyx", line 26, in openage.game.main_cpp.run_game (/home/linkan/openage/openage/game/main_cpp.cpp:989)
    result = run_game_cpp(args_cpp)
  File "", line 0, in 
  File "", line 0, in openage::run_game(openage::main_arguments const&)+0x55f
  File "", line 0, in openage::Engine::run()+0x1f
  File "", line 0, in openage::Engine::loop()+0x430
  File "", line 0, in openage::util::gl_check_error()+0x165
  File "", line 0, in openage::error::Error::Error(openage::log::message const&, bool, bool)+0x185
  File "", line 0, in openage::error::StackAnalyzer::analyze()+0x9f
  File "libopenage/util/opengl.cpp", line 66, in void openage::util::gl_check_error()
    throw Error(MSG(err) <<
openage.cppinterface.exctranslate.CPPException: OpenGL error state after running draw method: 1282
        invalid operation performed during some state
Segmenteringsfel (minnesutskrift skapad)

Any work around for this problem?

from openage.

VelorumS avatar VelorumS commented on April 28, 2024

Try to run it like that to get more info:

./run game --gl-debug

from openage.

zuntrax avatar zuntrax commented on April 28, 2024

We'll get rid of our current renderer soon, closing.

from openage.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.