Pop2121 / quake2-gwt-port

Automatically exported from code.google.com/p/quake2-gwt-port
GNU General Public License v2.0
0 stars 0 forks source link

Cygwin/Windows XP Build Instructions & Chromium Client Error #22

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
What steps will reproduce the problem?

From http://code.google.com/p/quake2-gwt-port/wiki/BuildingAndRunning
1. Prerequisites:
a. Install Chromium, not Chrome (tested with 5.0.394.0 (46121))
  You may find a shortcut with --no-sandbox --enable-webgl useful
b. Install Cygwin (1.7.5-1 + packages @ 20100501)
c. Install vorbis-tools in Cygwin setup.exe (tools 1.2.0-2 lib 1.2.3-1) 
d. Install Java SDK in Windows (Sun jdk 1.6.0_20)
  Set JAVA_HOME to C:\Program Files\Java\jdk<version>
  Add/Set to CLASSPATH C:\Program Files\Java\jdk<version>\lib;C:\Program 
Files\Java\jdk<version>\jre\lib
  Add to PATH C:\Program Files\Java\jdk<version>\bin;C:\Program 
Files\Java\jdk<version>\jre\bin
  (Tested with Windows System Environment Variables, which are 
automatically propagated to newly opened Cygwin shells)
e. Build lame in Cygwin manually (3.98.4 to /usr/local by default):
  ./configure
  make
  make install

2. Check Out Latest (@ 20100501)
a. Follow Instructions
b. Apply Attached Patches using patch:
  Unpak directory separator patch
    - for Windows Java only - already works for Unix/Cygwin Java
    - change to use Java's directory separator rather than hardcode '/'
    - other locations hardcode '/' but this has not been an issue yet - see 
attached list (some of these may be URL paths and OK)
  WAVConverter deadlock patch
    - avoids deadlocks in child processes due to unread stdout/stderr
    - optional debugging output

3. Build using shell script (not batch script)

4. Install Resources using shell script (not batch script)
  If you see errors about a missing png file, the first patch isn't working
  If you freeze on a large wav file, the second patch isn't working

5. Run Dedicated Server using shell script (not batch script)
  If you see errors about a demo level not found, the unpacking was 
incomplete

6. Navigate to Local Address in Chromium
  You may need to disable popup blocking for localhost

  If you see HTTP ERROR: 500 war\GwtQuake.html (The system cannot find the 
file specified):
    you've deleted the web files from war (oops!). You can start again from 
step 2, or just replace the 7 files and 1 subdirectory from 
http://code.google.com/p/quake2-gwt-port/source/browse/#hg/war

  If you see other errors about missing files:
    some files may not have unpacked correctly
    you may not have run cp -r maven-
build/server/target/gwtquake/war/gwtquake war

What is the expected output? What do you see instead?

Expected:

Quake 2 Game

Actual:

Web Page:

WebGL Support Required

For a list of compatible browsers and installation instructions, please 
refer to

http://code.google.com/p/quake2-gwt-port/wiki/CompatibleBrowsers
For a detailed error log, please refer to the JS console.

Console:

Failed to load resource 
gwtquake/3F5EB2DF5D73681377881A2A6FBDBB9C.cache.html

What version of the product are you using? On what operating system?

Source @ 20100501 on:
Cygwin 1.7.5-1 (build/install)
Windows XP SP 3
Sun Java 1.6.0_20 for Windows
Chromium 5.0.394.0 (46121)

Please provide any additional information below.

Server appears to run fine. Log attached.
Will try reinstalling 20100501 build of Chromium and report results.

Original issue reported on code.google.com by timothy....@gmail.com on 1 May 2010 at 11:41

Attachments:

GoogleCodeExporter commented 8 years ago
I was unable to install the latest build today. I think it's my machine.

Original comment by timothy....@gmail.com on 2 May 2010 at 5:31

GoogleCodeExporter commented 8 years ago
Tested using Chromium 5.0.395.0 (46213): --no-sandbox --web-gl

Same Error:

Browser:

WebGL Support Required

For a list of compatible browsers and installation instructions, please refer to

http://code.google.com/p/quake2-gwt-port/wiki/CompatibleBrowsers
For a detailed error log, please refer to the JS console.

Console:
Failed to load resource
http://localhost:8080/gwtquake/3F5EB2DF5D73681377881A2A6FBDBB9C.cache.html

Also, WebGL demos from http://www.khronos.org/webgl/wiki/Demo_Repository
fail with 'No WebGL context found' - WebGL + CSS gets halfway.

In Firefox 3.6.3 on my machine:

Quake fails with exactly the same error, but nothing on the console.

WebGL + CSS works, and some others appear to get further.

It may be my graphics card - Intel(R) 82865G Graphics Controller.
http://blog.vlad1.com/2009/09/21/webgl-samples/ suggests I may need software 
rendering.
Is there any way to enable it for Chromium?

Original comment by timothy....@gmail.com on 3 May 2010 at 11:43

GoogleCodeExporter commented 8 years ago
java.lang.NumberFormatException: For input string: "Ope"
gwtquake/467C963030334F33D5FBE8BFBB59B43F.cache.html:6029 at 
Unknown.lme(Unknown 
source:0)
gwtquake/467C963030334F33D5FBE8BFBB59B43F.cache.html:6029 at 
Unknown.Gke(Unknown 
source:0)
gwtquake/467C963030334F33D5FBE8BFBB59B43F.cache.html:6029 at 
Unknown.$Kd(Unknown 
source:0)
gwtquake/467C963030334F33D5FBE8BFBB59B43F.cache.html:6029 at 
Unknown.yOd(Unknown 
source:0)
gwtquake/467C963030334F33D5FBE8BFBB59B43F.cache.html:6029 at 
Unknown.vFb(Unknown 
source:0)
gwtquake/467C963030334F33D5FBE8BFBB59B43F.cache.html:6029 at 
Unknown.Ecb(Unknown 
source:0)
gwtquake/467C963030334F33D5FBE8BFBB59B43F.cache.html:6029 at 
Unknown.C_d(Unknown 
source:0)
gwtquake/467C963030334F33D5FBE8BFBB59B43F.cache.htmlFailed to load resource

Chrome 5.0.396.0

Could be the same problem?

Original comment by megazzt on 8 May 2010 at 6:10

GoogleCodeExporter commented 8 years ago
I too can confirm this issue.

------- use sound driver "HTML5Audio" -------
gwtquake/467C963030334F33D5FBE8BFBB59B43F.cache.html:7097------- Loading VID 
-------
gwtquake/467C963030334F33D5FBE8BFBB59B43F.cache.html:7097ref_gl version: GL 0.01
gwtquake/467C963030334F33D5FBE8BFBB59B43F.cache.html:59860: GLimp_SetMode
gwtquake/467C963030334F33D5FBE8BFBB59B43F.cache.html:59861: determining old 
display mode
gwtquake/467C963030334F33D5FBE8BFBB59B43F.cache.html:59862: searching new 
display mode
gwtquake/467C963030334F33D5FBE8BFBB59B43F.cache.html:59863: copying w/h
gwtquake/467C963030334F33D5FBE8BFBB59B43F.cache.html:59864: setting mode:
jake2.render.DisplayMode@1
gwtquake/467C963030334F33D5FBE8BFBB59B43F.cache.html:59865: storing mode
gwtquake/467C963030334F33D5FBE8BFBB59B43F.cache.html:59866: newWindow 
notification
gwtquake/467C963030334F33D5FBE8BFBB59B43F.cache.html:7097GL_VENDOR: ATI 
Technologies Inc.
gwtquake/467C963030334F33D5FBE8BFBB59B43F.cache.html:7097GL_RENDERER: ATI 
Mobility
Radeon HD 4570
gwtquake/467C963030334F33D5FBE8BFBB59B43F.cache.html:7097GL_VERSION: OpenGL ES 
2.0
Chromium
gwtquake/467C963030334F33D5FBE8BFBB59B43F.cache.html:7097GL_EXTENSIONS: 
gwtquake/467C963030334F33D5FBE8BFBB59B43F.cache.html:6029java.lang.NumberFormatE
xception:
For input string: "Ope"
gwtquake/467C963030334F33D5FBE8BFBB59B43F.cache.html:6029 at Unknown.lme(Unknown
source:0)
gwtquake/467C963030334F33D5FBE8BFBB59B43F.cache.html:6029 at Unknown.Gke(Unknown
source:0)
gwtquake/467C963030334F33D5FBE8BFBB59B43F.cache.html:6029 at Unknown.$Kd(Unknown
source:0)
gwtquake/467C963030334F33D5FBE8BFBB59B43F.cache.html:6029 at Unknown.yOd(Unknown
source:0)
gwtquake/467C963030334F33D5FBE8BFBB59B43F.cache.html:6029 at Unknown.vFb(Unknown
source:0)
gwtquake/467C963030334F33D5FBE8BFBB59B43F.cache.html:6029 at Unknown.Ecb(Unknown
source:0)
gwtquake/467C963030334F33D5FBE8BFBB59B43F.cache.html:6029 at Unknown.C_d(Unknown
source:0)
gwtquake/467C963030334F33D5FBE8BFBB59B43F.cache.htmlFailed to load resource

Original comment by mat...@gmail.com on 11 May 2010 at 9:39

GoogleCodeExporter commented 8 years ago
I posted this comment in
http://code.google.com/p/quake2-gwt-port/wiki/CompatibleBrowsers.  I'll go 
ahead and
file an issue on this.  Thanks a bunch for the great write-up on getting this 
to run
on Windows!

After CL 45293 (http://src.chromium.org/viewvc/chrome?view=rev&revision=45293),
Chromium returns a new string for GL_VERSION (OpenGL ES 2.0 Chromium). This is
correct as WebGL is based off of OpenGL ES 2.0. Previously, Chromium was just
returning the version string returned by the underlying OpenGL driver, which is 
not
correct. The Quake2 app is expecting a pure version number, and tries to parse 
it as
a float, and this throws a NumberFormatException?? when it tries to convert 
"Ope" :) 

This project needs to be updated to parse the OpenGL ES version string 
correctly, not
an OpenGL version string :)

Original comment by robbies on 11 May 2010 at 11:20

GoogleCodeExporter commented 8 years ago
Figured as much from my resource, unfortunately I understand javascript,php,c++ 
and c
but not java. If anyone has a patch, Ill test it.

Original comment by mat...@gmail.com on 12 May 2010 at 6:14

GoogleCodeExporter commented 8 years ago
Can the title be changed to reflect the 'java.lang.NumberFormatException: For 
input 
string: "Ope"' part?

This is true for Ubuntu Chromium nightlys as well, currently "6.0.406.0 (47376) 
Ubuntu"

@robbies: What file is the error in? Thanks for finding it.

Original comment by thebiggu...@gmail.com on 17 May 2010 at 10:47

GoogleCodeExporter commented 8 years ago
@thebigguy: sure, let's split the bug, as long as the Windows build 
instructions go
somewhere useful.

I've posted them at the end of
http://code.google.com/p/quake2-gwt-port/wiki/BuildingAndRunning but they'll 
probably
get lost in the comments.

Can someone with wiki access update the wiki with the Windows instructions?
(And the challenge to get it building without Cygwin!)

Original comment by timothy....@gmail.com on 18 May 2010 at 10:54

GoogleCodeExporter commented 8 years ago
Maybe that's not the best idea as
http://code.google.com/p/quake2-gwt-port/issues/detail?id=24 already correctly
reports the "Ope" bug.

Original comment by timothy....@gmail.com on 18 May 2010 at 10:56

GoogleCodeExporter commented 8 years ago
I hope this may help. The file where the error is occurring is in 
src/jake2/render/glconfig_t.java

I don't really have a thorough understanding of GWT, so I am not sure where 
this file 
necessarily came from. I am more than familiar enough with Java though to 
realize 
that the naming convention of that file is a little off, so I am not sure if 
the file 
is autogenerated or what.

The fix I came up with was to change line 39 from:
version = Float.parseFloat(version_string.substring(0,3));
to:
version = version_string.replace("[^0-9\\.]+", "");

But this still gives me a black screen as the code just fails later with a 
black 
screen after loading all the webgl context... I might need to log this as a 
separate 
error:

...GL_ARB_multitexture not found
BF1F7D9E093C03DADB9923410B9F7384.cache.html:7098Missing multi-texturing for 
LWJGL 
renderer
BF1F7D9E093C03DADB9923410B9F7384.cache.html:7098====== Quake2 Initialized ======
BF1F7D9E093C03DADB9923410B9F7384.cache.html:7098
BF1F7D9E093C03DADB9923410B9F7384.cache.html:6030com.google.gwt.core.client.JavaS
cript
Exception: (TypeError): Cannot call method 'Pe' of null
 stack: TypeError: Cannot call method 'Pe' of null

So I hope that fix may help others because it did at least get me past the 
first 
error

Original comment by samr...@gmail.com on 27 May 2010 at 3:57

GoogleCodeExporter commented 8 years ago
Issue 9 has been merged into this issue.

Original comment by stefan.haustein on 5 Jul 2010 at 10:06

GoogleCodeExporter commented 8 years ago
Issue 20 has been merged into this issue.

Original comment by stefan.haustein on 5 Jul 2010 at 10:07

GoogleCodeExporter commented 8 years ago
Hi, 

thanks for the windows instructions!

The chromium issue should be resolved now, please retry. 

Will close this issue when I have copied the Windows instructions to the Wiki.

Stefan

Original comment by stefan.haustein on 7 Jul 2010 at 1:35

GoogleCodeExporter commented 8 years ago
I just built last night using the instructions above and the server starts 
without any error. When navigating to the page in Chromium I still get the same 
"WebGL Support Required" error page. The javascript console reports this: 
"Failed to load resource gwtquake/B924BEE1D47DEDEB0CDF9C5090FD34A7.cache.html"

Original comment by steve.kr...@gmail.com on 30 Aug 2010 at 3:33

GoogleCodeExporter commented 8 years ago
Do other WebGL examples work for you in Chromium, e.g. any of 
http://www.khronos.org/webgl/wiki/Demo_Repository

Original comment by stefan.haustein on 30 Aug 2010 at 3:54

GoogleCodeExporter commented 8 years ago
The windows issues should be fixed with the patch from issue 34.

Original comment by stefan.haustein on 11 Oct 2011 at 6:36