Open stuaxo opened 12 years ago
Yes, I corrected it in the Windows build, but forgot to check in my changes. Could you try again, and let me know if there are other GLSL errors?
OK, some new ones; (only tested the mandelbulb so far):
Parse: /home/stu/projects/external/Fragmentarium/Fragmentarium-Source/Build - Linux/Fragmentarium/Examples/Historical 3D Fractals/Mandelbulb.frag
Including file: /home/stu/projects/external/Fragmentarium/Fragmentarium-Source/Build - Linux/Fragmentarium/Examples/Include/DE-Raytracer.frag
Including file: /home/stu/projects/external/Fragmentarium/Fragmentarium-Source/Build - Linux/Fragmentarium/Examples/Include/3D.frag
Including buffershader: /home/stu/projects/external/Fragmentarium/Fragmentarium-Source/Build - Linux/Fragmentarium/Examples/Include/BufferShader.frag
Parse: /home/stu/projects/external/Fragmentarium/Fragmentarium-Source/Build - Linux/Fragmentarium/Examples/Include/BufferShader.frag
Including file: /home/stu/projects/external/Fragmentarium/Fragmentarium-Source/Build - Linux/Fragmentarium/Examples/Include/MathUtils.frag
Mandelbulb Distance Estimator
Simple 3D Setup
5 locked variables: NormalBackStep,HardShadow,Reflection,DebugSun,EnableFloor
Camera: Use W/S to fly. 1/3 adjusts speed. Q/E rolls. Click on 3D window for key focus. See Help Menu for more.
Could not create fragment shader: 0:87(13): error: in' qualifier in declaration of
from' only valid for function parameters in (null).
0:87(13): error: in' qualifier in declaration of
dir' only valid for function parameters in (null).
0:87(13): error: in' qualifier in declaration of
dirDx' only valid for function parameters in (null).
0:87(13): error: in' qualifier in declaration of
dirDy' only valid for function parameters in (null).
0:88(14): error: in' qualifier in declaration of
coord' only valid for function parameters in (null).
0:89(14): error: in' qualifier in declaration of
zoom' only valid for function parameters in (null).
Failed to compile script (55 ms).
OK - I have changed them back into varying's :-) Apparently, Nvidia's driver is quite liberal wrt the standard. Could you try again?
Think I'm getting the crashing issue now, starting it just gets..
$ ./Fragmentarium Segmentation fault (core dumped)
This is on the same computer it worked on before; I haven't rebooted it overnight. I've tried a clean rebuild with the same result.
Oh, I see now you are on Linux on Mac. Which GPU/Driver are you using? Could you try running with gdb: I think all that is needed it something like 'gdb Fragmentarium', 'run', and after crashing, 'bt'?
Looks like it's intel i915 .. . so might explain some things; (Assumed this computer would have something a bit more)..
stu@stuart-Macmini ~/projects/external/Fragmentarium/Fragmentarium-Source/Build - Linux/Fragmentarium (master) $ gdb Fragmentarium GNU gdb (Ubuntu/Linaro 7.4-2012.04-0ubuntu2) 7.4-2012.04 Copyright (C) 2012 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "i686-linux-gnu". For bug reporting instructions, please see: http://bugs.launchpad.net/gdb-linaro/... Reading symbols from /home/stu/projects/external/Fragmentarium/Fragmentarium-Source/Build - Linux/Fragmentarium/Fragmentarium...(no debugging symbols found)...done. (gdb) run Starting program: /home/stu/projects/external/Fragmentarium/Fragmentarium-Source/Build - Linux/Fragmentarium/Fragmentarium [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/i386-linux-gnu/libthread_db.so.1". [New Thread 0xb409bb40 (LWP 28638)] [New Thread 0xb36ffb40 (LWP 28639)] [New Thread 0xb2cffb40 (LWP 28640)]
Program received signal SIGSEGV, Segmentation fault. 0xb19b18e3 in fs_visitor::visit(irloop) () from /usr/lib/i386-linux-gnu/dri/i965_dri.so (gdb) bt
from /usr/lib/i386-linux-gnu/dri/i965_dri.so
from /usr/lib/i386-linux-gnu/libdricore8.1.0.so.1
from /usr/lib/i386-linux-gnu/dri/i965_dri.so
from /usr/lib/i386-linux-gnu/libdricore8.1.0.so.1
from /usr/lib/i386-linux-gnu/dri/i965_dri.so
from /usr/lib/i386-linux-gnu/libdricore8.1.0.so.1
from /usr/lib/i386-linux-gnu/dri/i965_dri.so
from /usr/lib/i386-linux-gnu/libdricore8.1.0.so.1
from /usr/lib/i386-linux-gnu/dri/i965_dri.so
from /usr/lib/i386-linux-gnu/dri/i965_dri.so
---Type
from /usr/lib/i386-linux-gnu/dri/i965_dri.so
from /usr/lib/i386-linux-gnu/dri/i965_dri.so
from /usr/lib/i386-linux-gnu/libdricore8.1.0.so.1
from /usr/lib/i386-linux-gnu/libdricore8.1.0.so.1
from /usr/lib/i386-linux-gnu/libdricore8.1.0.so.1
from /usr/lib/i386-linux-gnu/libdricore8.1.0.so.1
()
from /usr/lib/i386-linux-gnu/libQtOpenGL.so.4
---Type
from /usr/lib/i386-linux-gnu/libQtOpenGL.so.4
from /usr/lib/i386-linux-gnu/libQtGui.so.4
from /usr/lib/i386-linux-gnu/libQtOpenGL.so.4
from /usr/lib/i386-linux-gnu/libQtGui.so.4
from /usr/lib/i386-linux-gnu/libQtGui.so.4
from /usr/lib/i386-linux-gnu/libQtCore.so.4
from /usr/lib/i386-linux-gnu/libQtGui.so.4
from /usr/lib/i386-linux-gnu/libQtGui.so.4
from /usr/lib/i386-linux-gnu/libQtGui.so.4
from /usr/lib/i386-linux-gnu/libQtGui.so.4
---Type
from /usr/lib/i386-linux-gnu/libQtOpenGL.so.4
from /usr/lib/i386-linux-gnu/libQtGui.so.4
from /usr/lib/i386-linux-gnu/libQtGui.so.4
from /usr/lib/i386-linux-gnu/libQtCore.so.4
from /usr/lib/i386-linux-gnu/libQtCore.so.4
from /lib/i386-linux-gnu/libglib-2.0.so.0
from /lib/i386-linux-gnu/libglib-2.0.so.0
---Type
from /usr/lib/i386-linux-gnu/libQtCore.so.4
from /usr/lib/i386-linux-gnu/libQtCore.so.4
from /usr/lib/i386-linux-gnu/libQtGui.so.4
(gdb) (gdb) (gdb)
The 2012 Mac Mini's are (at least) Intel HD 3000, so the i965 driver is probably supporting many different Intel chips. Using Windows it is possible to run Fragmentarium on such a GPU, though performance is poor.
It crashes in 'i965_dri.so', so I have a feeling this is (another) Linux driver bug.
3D on linux still seems to be a nightmare; I tried on a different computer at home last night and realised that has intel + nvidia... getting that to come up defeated me*.
There's an older one around somewhere with ATI, which I can try, I seem to recall the problem " reserved word `half' being in a few examples; but always just assumed it was because the computer was too old.
I'll try and get some time to run it on there to root those out.
The 'half' issue is my fault - it is a reserved keyword, it is just that Nvidia's compiler allows it. ATI / Intel is less strict. It was used in the default raytracer (DE-Raytracer.frag), which means pretty much every 3D example in Fragmentarium. But it should be fixed now.
I too experience a segmentation fault which seems to originate in 'i965_dri.so'. Any chance this issue could be pushed to the relevant folks, if it is known for a fact that it is the driver which is at fault?
bugs.freedesktop.org seems to be the relevant bug tracker. By any chance, could #54773 be related?
Pretty sure I'm getting this one too. I can run some of the 2d examples alright but not many others. I still gotta figure out where you guys got those error messages though! Still gotta read the documentation. I'm on Ubuntu 13.10. I'm gonna try and install proprietary Intel graphics drivers, even though they aren't supported. Maybe this could help?
Hi Tim, Try running it in gdb, then type 'run' (see my bug above).
Cheers S
Hi, I seem to get an error trying to render the mandelbulb and others. The problem seems to be Could not create fragment shader: 0:351(7): error: Illegal use of reserved word `half' Which appears in a lot of the examples I try.
Cheers
Full log:
Parse: /home/stu/projects/external/Fragmentarium/Fragmentarium-Source/Build - Linux/Fragmentarium/Examples/Historical 3D Fractals/Mandelbulb.frag Including file: /home/stu/projects/external/Fragmentarium/Fragmentarium-Source/Build - Linux/Fragmentarium/Examples/Include/DE-Raytracer.frag Including file: /home/stu/projects/external/Fragmentarium/Fragmentarium-Source/Build - Linux/Fragmentarium/Examples/Include/3D.frag Including buffershader: /home/stu/projects/external/Fragmentarium/Fragmentarium-Source/Build - Linux/Fragmentarium/Examples/Include/BufferShader.frag Parse: /home/stu/projects/external/Fragmentarium/Fragmentarium-Source/Build - Linux/Fragmentarium/Examples/Include/BufferShader.frag Including file: /home/stu/projects/external/Fragmentarium/Fragmentarium-Source/Build - Linux/Fragmentarium/Examples/Include/MathUtils.frag Mandelbulb Distance Estimator Simple 3D Setup 5 locked variables: NormalBackStep,HardShadow,Reflection,DebugSun,EnableFloor Camera: Use W/S to fly. 1/3 adjusts speed. Q/E rolls. Click on 3D window for key focus. See Help Menu for more. Could not create fragment shader: 0:351(7): error: Illegal use of reserved word `half' 0:351(7): error: syntax error, unexpected ERROR_TOK, expecting ',' or ';'
Failed to compile script (70 ms). This video card supports: OpenGL1.1, OpenGL1.2, OpenGL1.3, OpenGL1.4, OpenGL1.5, OpenGL2.0, OpenGL2.1, OpenGL3.0