Bug 4830 - Braid fails to start
Status: ASSIGNED
Alias: None
Product: Braid
Classification: Unclassified
Component: everything
Version: unspecified
Hardware: PC Linux
: P3 blocker
Assignee: Ryan C. Gordon
QA Contact: Ryan C. Gordon
URL:
Depends on:
Blocks:
 
Reported: 2010-12-15 08:15 EST by nadie
Modified: 2011-08-18 22:25:40 EDT
7 users (show)

See Also:


Attachments
strace ./braid 2> braid.strace (846.74 KB, text/plain)
2010-12-18 11:55 EST, keverets

Description nadie 2010-12-15 08:15:26 EST
I tried to start braid, but I only have a black screen, nothing happends and returns to the desktop without any error. 

I tried ./braid and ./braid -windowed
There is no error on the console, just, ocasionally:

ALSA lib pcm.c:7245:(snd_pcm_recover) underrun occuredmv 

and..

./braid -windowed ; echo $?
0


My specs:

processor	: 0
vendor_id	: AuthenticAMD
cpu family	: 6
model		: 8
model name	: AMD Athlon(tm) XP 2100+
stepping	: 1
cpu MHz		: 1733.487
cache size	: 256 KB
fdiv_bug	: no
hlt_bug		: no
f00f_bug	: no
coma_bug	: no
fpu		: yes
fpu_exception	: yes
cpuid level	: 1
wp		: yes
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 mmx fxsr sse syscall mmxext 3dnowext 3dnow up
bogomips	: 3468.43
clflush size	: 32
cache_alignment	: 32
address sizes	: 34 bits physical, 32 bits virtual
power management: ts

RAM: 256
Nvidia FX5200
Comment 1 nadie 2010-12-15 09:35:21 EST
But it is working under wine!
Comment 2 keverets 2010-12-18 11:55:43 EST
Created attachment 2538 [details]
strace ./braid 2> braid.strace

This is an strace of a startup where it goes black, changes the mouse cursor, then about 5 seconds later quietly exits with no return code or any output.
Comment 3 xipeos 2010-12-18 14:58:11 EST
Had the same problem with the new amd64 build. Problem seems to be related to the shipped version of libstdc++.so.6 - game runs fine if I let it link to my system's library.
Comment 4 Andrew Church 2010-12-21 03:19:08 EST
This is just a shot in the dark, but do you have any sort of text input processor running -- i.e., anything using the XIM protocol?  I was experiencing the same problems trying to start under a ja_JP.UTF-8 locale (with the ATOK input method), and setting LANG= before running the program seems to have fixed things.  (I also removed the bundled libstdc++, libgcc_s, and libSDL libraries, so that might be part of it, but without clearing $LANG, it didn't work either way.)
Comment 5 neeziowkair 2010-12-22 18:20:49 EST
Same experience for me: tested on my computer (quad core Linux/OpenSuSE 11.3) it works without issue, tested on my son's  (who the game is for) computer (P4 2.4Ghz Linux/OpenSuSE 11.2) I get the black screen stuff described here.

Does Braid have a diagnostics switch?

Ideas before Christmas would be nice...
Comment 6 neeziowkair 2010-12-22 18:24:30 EST
(In reply to comment #5)
> Same experience for me: tested on my computer (quad core Linux/OpenSuSE 11.3)
> it works without issue, tested on my son's  (who the game is for) computer (P4
> 2.4Ghz Linux/OpenSuSE 11.2) I get the black screen stuff described here.
> 
> Does Braid have a diagnostics switch?
> 
> Ideas before Christmas would be nice...

PS: have tried -windowed, and specific widths and heights and -half, used build2 installer.  It's an nvidia card using nvidia drivers.
Comment 7 Ryan C. Gordon 2010-12-24 00:34:18 EST
> PS: have tried -windowed, and specific widths and heights and -half, used
> build2 installer.  It's an nvidia card using nvidia drivers.

-no_post usually fixes this...but if it's the nvidia drivers, you might have an amd64 system running the 32-bit binary (so it uses the incorrectly-installed 32-bit non-nvidia drivers)...this is just a guess, though.

--ryan.
Comment 8 Ryan C. Gordon 2010-12-27 19:27:38 EST
Someone mentioned to me that deleting the libstdc++ library from the installation directory (so it uses what's installed on your system instead) fixed this.

Generally, I don't recommend this, but packaging 64-bit Linux binaries is a new art to me, so I suppose it's possible.

Alternately: try the 32-bit version, perhaps.

--ryan.
Comment 9 David Tenty 2010-12-30 23:15:24 EST
Hmm, I am having this problem as well on a GeForce FX 5900XT. Looked at the strace output and saw one of the last things the game was busy with was loading the cg shaders. So, I removed the cg_shaders directory from the data directory and now the game starts! I get a completely black display but I get audio and can interact with the menu system.
Comment 10 pRtkL xLr8r 2010-12-31 13:36:37 EST
Ah, nice work tracking that, explains my problems as I have the same card...

(In reply to comment #9)
> Hmm, I am having this problem as well on a GeForce FX 5900XT. Looked at the
> strace output and saw one of the last things the game was busy with was loading
> the cg shaders. So, I removed the cg_shaders directory from the data directory
> and now the game starts! I get a completely black display but I get audio and
> can interact with the menu system.
Comment 11 Anthony Taylor 2011-03-05 09:00:49 EST
I think I've got the same bug.  I start braid and I get a black screen with mouse cursor.  I can move the mouse cursor, but it is only moments before the screen closes and I'm back to square one.  No error messages.

I think it's a stock Intel graphics card.

If theres anything I can do to help debug let me know.
Comment 12 Robert Henney 2011-08-18 21:34:56 EDT
I have a Quadro FX 2000 and observe the same behavior that David describes, being that I am able to get the program to start if the cg_shaders directory is renamed first.  unfortunately at that point I also have a blank screen with music playing, so can't proceed any further.

I can provide traces and testing if desired.
Comment 13 Robert Henney 2011-08-18 22:25:40 EDT
I've narrowed it down to these 5 files.  if any of these are in the cg_shaders directory then the game won't start, but none of the other files prevent the game from starting.  playing the game without these 5 files isn't very pretty of course.

these files are short as well as plain text, so it might be fairly trivial to find what's common among these 5 that isn't like the other 16 files.  I'm not familiar with this shader language though, so that step is probably beyond my abilities.

add.cgfx
multiply_mode.cgfx
text.cgfx
world.cgfx
world_clamped.cgfx