Release OpenLara

ptitSeb

Serial Porter
Joined
Aug 15, 2012
Messages
8,482
Age
47
Location
France, near Lyon
Here is OpenLara, an open source recreation of the Tomb Raider 1, 2 and 3 Engine.

(GLES2 version screenshot)

This build use GL4ES (there is GLES2 port, but not using Linux, so this was the faster way to port it). The audio backend is using OSS (again, that was the easier and faster way to port, even faster then ALSA). The default keymap has been slightly adapted to fit the Pandora.
You need to put the game data in appdata/openlara to play this.
You can either copy the "data" and "fmv" folder from CD (or CD image) directly or put individual data files inside "level/X" folder (X is either 1, 2 or 3). Look at the readme.txt inside each folder for detail.
Also, CD Rip audio goes in audio/X folder, with name track_XX.mp3 or track_XX.ogg


(GLES1 version screenshot)

Starting with build 03, there is 2 version of the engine in the PND: one for GLES1 and the other for GLES2. Depending on the Pandora model it's run on, it will automatically select GLES1 for CC model and GLES2 for the other. You can force a version by creating a file names ".es" (without quotes) inside appdata/openlara and puting either 1 or 2 to select the GLES version.

The GLES1 version is prety fast for video (faster then GLES2) but the game itself has worse lighting than GLES2 version.

The GLES2 game take some time to start (it build it's shader at every start), so be patient (I'll try implement Binary shaders in gl4es later, that should accelerate the starts). In options, you can put Lighting up to HIGH without issue. Shadows can be put to MEDIUM but there is a bit of slowdown there. Water shaders should be left to LOW, other settings slows down things too much (and doesn't seems to produce the correct visuals anyway).

I have tested only with Steam version of TR1 (data are inside GAME.GOG that is in fact an .bin image, with GAME.DAT beeing the .cue file, and I had to rename the mp3 tracks, adding "track_" in front).

Expect silent crash if the data are not in the correct places (or with correct name).

History log
=========

Build 06
-----------

  • Updated GLES2 version
  • Updated libs
Build 05
-----------

  • Pandora shoulder buttons can be configured
  • Added non-intrusive dialog to choose GLES 1 or 2
  • Fixed a bug in gl4es with Framebuffer deletion
Build 04
-----------

  • Pandora buttons plus "." and "." can be configured
  • Speedup a bit Movies on GLES2 version
  • Large speedup on GLES1 version
Build 03
-----------

  • Added GLES1 version
  • GLES1 version used for CC model, or selectable with ".es" file
Build 02
-----------

  • Update packaging
  • Added sources in the PND
Build 01
-----------

  • Initial build
  • Added Pandora version, based on Linux version
  • Added OSS for sound on Pandora
  • Added support for PageUp/PageDown/Home/End keys
  • Customized default keymap for Pandora
  • Added support for mp3 CD Rip
  • Changed included minimp3 with https://github.com/lieff/minimp3
  • Made default Config for Pandora without shadows
 
Last edited:

Palmiga

Member
Joined
Oct 18, 2010
Messages
134
I tried to install it, but it wont start. Im using the game-files from Tomb Raider 1 Directors Cut. I put the data and fmv folder inside appdata/openlara.
Openlara starts, I see an empty window with the title-bar "openlara" and after a few seconds loading (led-flashing) it desapear.
I tried single-level-files too, but still no luck.
Could you help?
 

ptitSeb

Serial Porter
Joined
Aug 15, 2012
Messages
8,482
Age
47
Location
France, near Lyon
I tried to install it, but it wont start. Im using the game-files from Tomb Raider 1 Directors Cut. I put the data and fmv folder inside appdata/openlara.
Openlara starts, I see an empty window with the title-bar "openlara" and after a few seconds loading (led-flashing) it desapear.
I tried single-level-files too, but still no luck.
Could you help?
Can you put here the content of /tmp/pndrun_openlara.out to see what is happening. Also, what pandora model do you have? It's firmware is it reasonably up-to-date, and what SGX driver are you using?
 

Palmiga

Member
Joined
Oct 18, 2010
Messages
134
=======================================================================================
PND : /media/A-128GB/pandora/menu/openlara.pnd
PND_FSTYPE : Squashfs
APPDATADIR : /media/A-128GB/pandora/appdata/openlara
APPDD_FSTYPE : vfat
PND_CPUSPEED : <unset>
EXENAME : runscript.sh
ARGUMENTS : <unset>
=======================================================================================
[ START ]--- Mount the PND ----------
Mounting : mount -t squashfs -o ro "/dev/loop0" "/mnt/utmp/openlara"
Mounting the Union FS : mount -t aufs -o exec,noplink,dirs="/media/A-128GB/pandora/appdata/openlara=rw+nolwh":"/mnt/pnd/openlara=rr" none "/mnt/utmp/openlara"
[SUCCESS]--- Mount the PND ----------
[ START ]--- Starting the application ( runscript.sh ) ----------
--------------------------------------------------------------
Setting PATH to /mnt/utmp/openlara:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/bin/X11:/usr/games
--------------------------------------------------------------
Setting LD_LIBRARY_PATH to /mnt/utmp/openlara/lib:/lib:/usr/lib
System check
============
Freememory is 248
Cpu Speed is 1100
Sys Speed is 400
PND Build is 01
LIBGL: Initialising gl4es
LIBGL: v1.0.9 built on Sep 29 2018 18:50:10
LIBGL: framebuffer output enabled
LIBGL: Using GLES 2.0 backend
LIBGL:loaded: libGLESv2.so
LIBGL:loaded: libEGL.so
LIBGL: Using GLES 2.0 backend
LIBGL: Hardware Limited NPOT detected and used
LIBGL: FBO are in core, and so used
LIBGL: PointSprite are in core, and so used
LIBGL: CubeMap are in core, and so used
LIBGL: BlendColor is in core, and so used
LIBGL: Blend Substract is in core, and so used
LIBGL: Blend Function and Equation Separation is in core, and so used
LIBGL: Texture Mirrored Repeat is in core, and so used
LIBGL: Extension GL_OES_mapbuffer detected
LIBGL: Extension GL_OES_element_index_uint detected and used
LIBGL: Extension GL_OES_packed_depth_stencil detected and used
LIBGL: Extension GL_OES_depth24 detected and used
LIBGL: Extension GL_OES_rgb8_rgba8 detected and used
LIBGL: Extension GL_EXT_multi_draw_arrays detected
LIBGL: Extension GL_EXT_texture_format_BGRA8888 detected and used
LIBGL: Extension GL_OES_depth_texture detected and used
LIBGL: Extension GL_OES_texture_float detected and used
LIBGL: Extension GL_OES_fragment_precision_high detected and used
LIBGL: Max vertex attrib: 16
LIBGL: Extension GL_OES_standard_derivatives detected and used
LIBGL: Max texture size: 2048
LIBGL: Max Varying Vector: 8
LIBGL: Texture Units: 8(8), Max lights: 8, Max planes: 6
LIBGL: Hardware vendor is Imagination Technologies
LIBGL: Targeting OpenGL 2.1
LIBGL: Enable FastMath for cortex-a8
LIBGL: Expose GL_ARB_texture_non_power_of_two extension
LIBGL: Forcing NPOT support by disabling MIPMAP support for NPOT textures
LIBGL: glXMakeCurrent FBO workaround enabled
LIBGL: Current folder is:/mnt/utmp/openlara
init gamepads:
sound enabled, dsp opened for write
set Frequency to 44100, return 0 (rate=44100)
set dsp to stereo (2 => 0)
set dsp to 16bits signed audio (16/16 => 0)
set dsp fragment size to 9x8 (512 => 0)
error loading file "level/1/TITLE"
OpenLara (Sep 30 2018)
Vendor : ptitSeb
Renderer : GL4ES wrapper
Version : 2.1 gl4es wrapper 1.0.9
cache : /mnt/utmp/openlara/home/.OpenLara/
supports :
variyngs count : 16
binary shaders : false
vertex arrays : true
depth texture : true
shadow sampler : false
discard frame : false
NPOT textures : true
RG textures : false
border color : true
anisotropic : 0
float textures : float = false, half = false

LIBGL: Enable LIBGL_VSYNC=1 if you want to use vsync.
shader: cache warm-up...
shader: COMPOSE(0)
! shader: Success.

! shader: Success.

shader: COMPOSE(4)
! shader: Success.

! shader: Success.

shader: COMPOSE(2)
! shader: Success.

! shader: Success.

shader: COMPOSE(2) a
! shader: Success.

! shader: Success.

shader: COMPOSE(2) u
! shader: Success.

! shader: Success.

shader: COMPOSE(2) ua
! shader: Success.

! shader: Success.

shader: COMPOSE(3)
! shader: Success.

! shader: Success.

shader: COMPOSE(3) u
! shader: Success.

! shader: Success.

shader: COMPOSE(3) ua
! shader: Success.

! shader: Success.

shader: COMPOSE(3) a
! shader: Success.

! shader: Success.

shader: COMPOSE(0) u
! shader: Success.

! shader: Success.

shader: COMPOSE(0) a
! shader: Success.

! shader: Success.

shader: COMPOSE(0) ua
! shader: Success.

! shader: Success.

shader: COMPOSE(1)
! shader: Success.

! shader: Success.

shader: COMPOSE(1) a
! shader: Success.

! shader: Success.

shader: AMBIENT(2)
! shader: Success.

! shader: Success.

shader: AMBIENT(2) a
! shader: Success.

! shader: Success.

shader: AMBIENT(2) u
! shader: Success.

! shader: Success.

shader: AMBIENT(2) ua
! shader: Success.

! shader: Success.

shader: AMBIENT(0) a
! shader: Success.

! shader: Success.

shader: AMBIENT(0) ua
! shader: Success.

! shader: Success.

shader: AMBIENT(1)
! shader: Success.

! shader: Success.

shader: FILTER(0)
! shader: Success.

! shader: Success.
WARNING: 0:40: Calls to any function that may require a gradient calculation inside a conditional block may return undefined results
WARNING: 1 compilation warnings.


shader: FILTER(1)
! shader: Success.

! shader: Success.
WARNING: 0:40: Calls to any function that may require a gradient calculation inside a conditional block may return undefined results
WARNING: 1 compilation warnings.


shader: FILTER(2)
! shader: Success.

! shader: Success.
WARNING: 0:40: Calls to any function that may require a gradient calculation inside a conditional block may return undefined results
WARNING: 1 compilation warnings.


shader: FILTER(3)
! shader: Success.

! shader: Success.
WARNING: 0:40: Calls to any function that may require a gradient calculation inside a conditional block may return undefined results
WARNING: 1 compilation warnings.


shader: GUI(0)
! shader: Success.

! shader: Success.

shader: cache is ready
./runscript.sh: line 65: 2235 Segmentation fault ./OpenLara
rm: cannot remove `/tmp/strife_nub0mode_before': No such file or directory
rm: cannot remove `/tmp/strife_nub1mode_before': No such file or directory
[ FAILED]--- Starting the application ( runscript.sh ) ----------
[ START ]--- Restoring the frame buffer status ----------
[SUCCESS]--- Restoring the frame buffer status ----------
[ START ]--- Restoring nub mode ----------
[SUCCESS]--- Restoring nub mode ----------
[ START ]--- uMount the PND ----------
[ START ]--- Waiting the Union to be available ----------
[SUCCESS]--- Waiting the Union to be available ----------
rmdir: failed to remove `/mnt/utmp/openlara': Device or resource busy
[ START ]--- Waiting the PND mount dir to be free ----------
[SUCCESS]--- Waiting the PND mount dir to be free ----------
cleanup done
[SUCCESS]--- uMount the PND ----------
=======================================================================================
Return code is : 5


I have a 1Ghz-Version, latest systemupdate. How could I found out the sgx-driver-version?
 

Palmiga

Member
Joined
Oct 18, 2010
Messages
134
I used it, but it doesnt shows me the installed version. Dont know, what version is actually is. :$
 

ptitSeb

Serial Porter
Joined
Aug 15, 2012
Messages
8,482
Age
47
Location
France, near Lyon
all looks good (but you should put the log inside spoiler tags) except this
Code:
error loading file "level/1/TITLE"
It looks like it doesn't find the datas.

Here is my appdata/openlara is (with TR1 datas extracted from ISO from the steam version)
Code:
ll /media/PANDOSEB/pandora/appdata/openlara/
total 64
drwxrwxrwx 2 root root 16384 Sep 30 22:29 DATA
drwxrwxrwx 2 root root 16384 Sep 30 22:29 FMV
drwxrwxrwx 3 root root 16384 Sep 30 22:31 home
-rwxrwxrwx 1 root root   207 Sep 30 22:28 openlara.txt
(don't mind the 777 mask, it's a FAT32 SDCard, but I have ran it also from a ext2).
and DATA looks like:
Code:
ll /media/PANDOSEB/pandora/appdata/openlara/DATA/
total 50624
-rwxrwxrwx 1 root root  106587 Sep 30 22:29 CRED1.PCX
-rwxrwxrwx 1 root root  196985 Sep 30 22:29 CRED2.PCX
-rwxrwxrwx 1 root root  174908 Sep 30 22:29 CRED3.PCX
-rwxrwxrwx 1 root root  599840 Sep 30 22:29 CUT1.PHD
-rwxrwxrwx 1 root root  354320 Sep 30 22:29 CUT2.PHD
-rwxrwxrwx 1 root root  512104 Sep 30 22:29 CUT3.PHD
-rwxrwxrwx 1 root root  879582 Sep 30 22:29 CUT4.PHD
-rwxrwxrwx 1 root root   22700 Sep 30 22:29 EIDOSPC.PCX
-rwxrwxrwx 1 root root  102512 Sep 30 22:29 END.PCX
-rwxrwxrwx 1 root root 3237128 Sep 30 22:29 GYM.PHD
-rwxrwxrwx 1 root root  168100 Sep 30 22:29 INSTALL.PCX
-rwxrwxrwx 1 root root 3224138 Sep 30 22:29 LEVEL10A.PHD
-rwxrwxrwx 1 root root 3094342 Sep 30 22:29 LEVEL10B.PHD
-rwxrwxrwx 1 root root 3532024 Sep 30 22:29 LEVEL10C.PHD
-rwxrwxrwx 1 root root 2533634 Sep 30 22:29 LEVEL1.PHD
-rwxrwxrwx 1 root root 2873450 Sep 30 22:29 LEVEL2.PHD
-rwxrwxrwx 1 root root 2934730 Sep 30 22:29 LEVEL3A.PHD
-rwxrwxrwx 1 root root 2738258 Sep 30 22:29 LEVEL3B.PHD
-rwxrwxrwx 1 root root 3030872 Sep 30 22:29 LEVEL4.PHD
-rwxrwxrwx 1 root root 2718540 Sep 30 22:29 LEVEL5.PHD
-rwxrwxrwx 1 root root 3074376 Sep 30 22:29 LEVEL6.PHD
-rwxrwxrwx 1 root root 2817612 Sep 30 22:29 LEVEL7A.PHD
-rwxrwxrwx 1 root root 3389096 Sep 30 22:29 LEVEL7B.PHD
-rwxrwxrwx 1 root root 2880564 Sep 30 22:29 LEVEL8A.PHD
-rwxrwxrwx 1 root root 2886756 Sep 30 22:29 LEVEL8B.PHD
-rwxrwxrwx 1 root root 3105450 Sep 30 22:29 LEVEL8C.PHD
-rwxrwxrwx 1 root root  115980 Sep 30 22:29 TITLEH.PCX
-rwxrwxrwx 1 root root  316460 Sep 30 22:29 TITLE.PHD
Now, I have noticed that I forgot to expand the empty folder "level" and "audio", but they are not mandatory. Ill make a build 02 soon anyway.
 

ptitSeb

Serial Porter
Joined
Aug 15, 2012
Messages
8,482
Age
47
Location
France, near Lyon
Ok, so I uploaded a build 02, that correctly expand the "level" and "audio" folders (so you can put thoses mp3 somewhere).
Also, I have put the sources in sources.tgz inside the PND for the curious (that's the whole src folder from the github clone).

Build 02
-----------

  • Update packaging
  • Added sources in the PND
 

Palmiga

Member
Joined
Oct 18, 2010
Messages
134
I installed the Build 02 but still wont start.

Here is the new logfile and a picture of the DATA-folder.
What SGX-driver do you use?

=======================================================================================
PND : /media/A-128GB/pandora/menu/openlara.pnd
PND_FSTYPE : Squashfs
APPDATADIR : /media/A-128GB/pandora/appdata/openlara
APPDD_FSTYPE : vfat
PND_CPUSPEED : <unset>
EXENAME : runscript.sh
ARGUMENTS : <unset>
=======================================================================================
[ START ]--- Mount the PND ----------
Mounting : mount -t squashfs -o ro "/dev/loop0" "/mnt/utmp/openlara"
Mounting the Union FS : mount -t aufs -o exec,noplink,dirs="/media/A-128GB/pandora/appdata/openlara=rw+nolwh":"/mnt/pnd/openlara=rr" none "/mnt/utmp/openlara"
[SUCCESS]--- Mount the PND ----------
[ START ]--- Starting the application ( runscript.sh ) ----------
--------------------------------------------------------------
Setting PATH to /mnt/utmp/openlara:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/bin/X11:/usr/games
--------------------------------------------------------------
Setting LD_LIBRARY_PATH to /mnt/utmp/openlara/lib:/lib:/usr/lib
System check
============
Freememory is 176
Cpu Speed is 1100
Sys Speed is 400
PND Build is 02
LIBGL: Initialising gl4es
LIBGL: v1.0.9 built on Sep 29 2018 18:50:10
LIBGL: framebuffer output enabled
LIBGL: Using GLES 2.0 backend
LIBGL:loaded: libGLESv2.so
LIBGL:loaded: libEGL.so
LIBGL: Using GLES 2.0 backend
LIBGL: Hardware Limited NPOT detected and used
LIBGL: FBO are in core, and so used
LIBGL: PointSprite are in core, and so used
LIBGL: CubeMap are in core, and so used
LIBGL: BlendColor is in core, and so used
LIBGL: Blend Substract is in core, and so used
LIBGL: Blend Function and Equation Separation is in core, and so used
LIBGL: Texture Mirrored Repeat is in core, and so used
LIBGL: Extension GL_OES_mapbuffer detected
LIBGL: Extension GL_OES_element_index_uint detected and used
LIBGL: Extension GL_OES_packed_depth_stencil detected and used
LIBGL: Extension GL_OES_depth24 detected and used
LIBGL: Extension GL_OES_rgb8_rgba8 detected and used
LIBGL: Extension GL_EXT_multi_draw_arrays detected
LIBGL: Extension GL_EXT_texture_format_BGRA8888 detected and used
LIBGL: Extension GL_OES_depth_texture detected and used
LIBGL: Extension GL_OES_texture_float detected and used
LIBGL: Extension GL_OES_fragment_precision_high detected and used
LIBGL: Max vertex attrib: 8
LIBGL: Extension GL_OES_standard_derivatives detected and used
LIBGL: Max texture size: 2048
LIBGL: Max Varying Vector: 8
LIBGL: Texture Units: 4(8), Max lights: 8, Max planes: 6
LIBGL: Hardware vendor is Imagination Technologies
LIBGL: Targeting OpenGL 2.1
LIBGL: Enable FastMath for cortex-a8
LIBGL: Expose GL_ARB_texture_non_power_of_two extension
LIBGL: Forcing NPOT support by disabling MIPMAP support for NPOT textures
LIBGL: glXMakeCurrent FBO workaround enabled
LIBGL: Current folder is:/mnt/utmp/openlara
init gamepads:
sound enabled, dsp opened for write
set Frequency to 44100, return 0 (rate=44100)
set dsp to stereo (2 => 0)
set dsp to 16bits signed audio (16/16 => 0)
set dsp fragment size to 9x8 (512 => 0)
OpenLara (Sep 30 2018)
Vendor : ptitSeb
Renderer : GL4ES wrapper
Version : 2.1 gl4es wrapper 1.0.9
cache : /mnt/utmp/openlara/home/.OpenLara/
supports :
variyngs count : 16
binary shaders : false
vertex arrays : true
depth texture : true
shadow sampler : false
discard frame : false
NPOT textures : true
RG textures : false
border color : true
anisotropic : 0
float textures : float = false, half = false

LIBGL: Enable LIBGL_VSYNC=1 if you want to use vsync.
shader: cache warm-up...
shader: COMPOSE(0)
! shader: Success.

! shader: Success.

shader: COMPOSE(4)
! shader: Success.

! shader: Success.

shader: COMPOSE(2)
! shader: Success.

! shader: Success.

shader: COMPOSE(2) a
! shader: Success.

! shader: Success.

shader: COMPOSE(2) u
! shader: Success.

! shader: Success.

shader: COMPOSE(2) ua
! shader: Success.

! shader: Success.

shader: COMPOSE(3)
! shader: Success.

! shader: Success.

shader: COMPOSE(3) u
! shader: Success.

! shader: Success.

shader: COMPOSE(3) ua
! shader: Success.

! shader: Success.

shader: COMPOSE(3) a
! shader: Success.

! shader: Success.

shader: COMPOSE(0) u
! shader: Success.

! shader: Success.

shader: COMPOSE(0) a
! shader: Success.

! shader: Success.

shader: COMPOSE(0) ua
! shader: Success.

! shader: Success.

shader: COMPOSE(1)
! shader: Success.

! shader: Success.

shader: COMPOSE(1) a
! shader: Success.

! shader: Success.

shader: AMBIENT(2)
! shader: Success.

! shader: Success.

shader: AMBIENT(2) a
! shader: Success.

! shader: Success.

shader: AMBIENT(2) u
! shader: Success.

! shader: Success.

shader: AMBIENT(2) ua
! shader: Success.

! shader: Success.

shader: AMBIENT(0) a
! shader: Success.

! shader: Success.

shader: AMBIENT(0) ua
! shader: Success.

! shader: Success.

shader: AMBIENT(1)
! shader: Success.

! shader: Success.

shader: FILTER(0)
! shader: Success.

! shader: Success.
WARNING: 0:40: Calls to any function that may require a gradient calculation inside a conditional block may return undefined results
WARNING: 1 compilation warnings.


shader: FILTER(1)
! shader: Success.

! shader: Success.
WARNING: 0:40: Calls to any function that may require a gradient calculation inside a conditional block may return undefined results
WARNING: 1 compilation warnings.


shader: FILTER(2)
! shader: Success.

! shader: Success.
WARNING: 0:40: Calls to any function that may require a gradient calculation inside a conditional block may return undefined results
WARNING: 1 compilation warnings.


shader: FILTER(3)
! shader: Success.

! shader: Success.
WARNING: 0:40: Calls to any function that may require a gradient calculation inside a conditional block may return undefined results
WARNING: 1 compilation warnings.


shader: GUI(0)
! shader: Success.

! shader: Success.

shader: cache is ready
meshes: 13
atlas: 512 x 512
MegaMesh (i:57468 v:10827 a:4, size:461400)
./runscript.sh: line 69: 3039 Segmentation fault ./OpenLara
rm: cannot remove `/tmp/strife_nub0mode_before': No such file or directory
rm: cannot remove `/tmp/strife_nub1mode_before': No such file or directory
[ FAILED]--- Starting the application ( runscript.sh ) ----------
[ START ]--- Restoring the frame buffer status ----------
[SUCCESS]--- Restoring the frame buffer status ----------
[ START ]--- Restoring nub mode ----------
[SUCCESS]--- Restoring nub mode ----------
[ START ]--- uMount the PND ----------
[ START ]--- Waiting the Union to be available ----------
[SUCCESS]--- Waiting the Union to be available ----------
rmdir: failed to remove `/mnt/utmp/openlara': Device or resource busy
[ START ]--- Waiting the PND mount dir to be free ----------
[SUCCESS]--- Waiting the PND mount dir to be free ----------
cleanup done
[SUCCESS]--- uMount the PND ----------
=======================================================================================
Return code is : 4

upload_2018-10-1_22-45-5.png
 

ptitSeb

Serial Porter
Joined
Aug 15, 2012
Messages
8,482
Age
47
Location
France, near Lyon
Fills seem to be in the corect places, and I don't see any trace of OpenLara complaining about a missing file. Strange it doesn't start.

For SGX, I used 4.10 driver (I also have a large swapfile, but I don't think that could make a change).

Tomorow, I'll try it on a CC model without Codeblocks mounted, to see how it run...
 

levi

Still fresh, damnit!
Joined
Oct 6, 2008
Messages
11,592
Location
Somewhere off the coast of the EU
There is prob some command line thing that can show you. But this program should tell you. http://repo.openpandora.org/?page=detail&app=sysinfo.wb I think... it's been a while since I used it.

Can always reinstall a specific SGX version over again to make sure.
I'm not sure that reports SGX driver version. I've always used this: PandoraModelCheck by Ekianjo. It reports empty if you're using the stock driver for some reason and has never been updated to fix that as far as I know, but I don't know any other situation in which it does that, so if it reports blank I think it's safe to assume you're using the stock version whatever that actually is.
 

ptitSeb

Serial Porter
Joined
Aug 15, 2012
Messages
8,482
Age
47
Location
France, near Lyon
I have just tried on my CC model, without swap and with default SGX drivers:

The game launch and I see the intro video. I have the main menu, can select the 1sy level, I then see the video but then it crash at the starting of the level.

with 4.04 driver on the CC, it freeze instead of crashing.

I'll do some test with other SGX Drivers, but I think you should use 4.10 on Gigahertz and on Rebirth models.
[doublepost=1538463454,1538462750][/doublepost]After a few more test, I reduced all detail to low and with default driver, I can start the Training level on the CC. The 1st level of TR1 still crash, and I haven't found a driver that work. Also, using a swap doesn't change anything.
Tonight, I'll check a few things in OpenLara source code (I remember seeing stuff about spliting the scene or the triangles or something like that that may help).
 

ptitSeb

Serial Porter
Joined
Aug 15, 2012
Messages
8,482
Age
47
Location
France, near Lyon
New release on the repo.

This time there is 2 binary in the PND. One without shaders (GLES1) and one with shaders (GLES2).
If the PND is run on a CC model, it will select GLES1 version, the GLES2 version is used otherwise.
You can force the use of either version by creating a file named ".es" in appdata/openlara and simply put 1 or 2 inside. Look in first post for mode details.

One word of advise: on Rebitrh and Gigahertz mode, use SGX driver 4.10 (or force version to GLES1 if you don't want to mess with drivers).

Build 03
-----------

  • Added GLES1 version
  • GLES1 version used for CC model, or selectable with ".es" file
 

notaz

Certified Guru
Joined
Aug 23, 2005
Messages
4,913
Location
Lithuania
Website
notaz.gp2x.de
Thanks for the release, and still being around in the pandora land. Early TR series are not the best games today, but the nostalgic value is significant to me.

OpenLara runs quite well for me, but there are issues:
- the FMVs are stuttering while CPU usage is ~25%. Seems like instead of a steady frame rate, some frames are displayed in a quick succession and then there is a pause and so on. Could be GL related, but maybe it's blocking on audio? Large audio buffer could cause long blocking just a few times per second.
- it's not possible to change key config for keys like pg_down or even '.' or ','. I'd like the same key config as in PS1 version, but it's not possible to set that right now.
 

ptitSeb

Serial Porter
Joined
Aug 15, 2012
Messages
8,482
Age
47
Location
France, near Lyon
Glad you like it notaz :)

For the FMV it is GL related. I'm unsure why it's slow (it seems to decode the video in 2 texture that are then combined on screen), but using GLES1 version, the FMV are butter smooth. I guess the shader used is bit heavy for FMV, but I haven't really anaysed that yet.
The keymap, I added PGUP PGDN, HOME and END button (at least the default config use them), but maybe I missed some constants in a few places, like for the key config menu. for '.' and ',',I'll add them.
 

ptitSeb

Serial Porter
Joined
Aug 15, 2012
Messages
8,482
Age
47
Location
France, near Lyon
A new release on the repo. I added "." and "," as valid key, and fixed the configuration screen, so they can be assigned, along with the Pandora buttons.

Also, I tried to speedup the FMV in GLES2 version (or at least make it smoother). While the "Core" video still stuter, the other FMV seems to not stutter anymore. The GLES1 versio still has butter smooth FMV. Also, I notice some part of the game were unplayably slow on GLES1, and it's fixed now.

Build 04
-----------

  • Pandora buttons plus "." and "." can be configured
  • Speedup a bit Movies on GLES2 version
  • Large speedup on GLES1 version
 

Magic Sam

Forever Homebrew
Joined
Aug 10, 2007
Messages
2,223
Age
37
Location
Innsmouth, MA
Hi all :)

@ptitSeb : I just bought Tomb Raider 1 through 3 from GOG for ~10 euros !

I can't believe I'm actually playing Tomb Raider on the Pandora (I obviously played the emulated PSX version before, but that's not the same IMHO) :D

You rock, as always !

Cheers, Magic Sam
[doublepost=1538940971,1538939596][/doublepost]Hi again ;)

@ptitSeb : I tried to bind either "walk" or "look" to one of the trigger buttons, but that didn't work...

What am I doing wrong ?

Cheers, Magic Sam
 

ptitSeb

Serial Porter
Joined
Aug 15, 2012
Messages
8,482
Age
47
Location
France, near Lyon
Triggers are not bindable for now (shift, control and alt are not bindable). I guess I can still try to hack something.

EDIT: Shift Ctrl and Alt are bindable, but not the Triggers, only the key on the keymap. I'll fix that!
 
Last edited:

Magic Sam

Forever Homebrew
Joined
Aug 10, 2007
Messages
2,223
Age
37
Location
Innsmouth, MA
@ptitSeb : thanks for your quick reply :)

Bug #2, in Lara's home, swimming-pool: when Lara jumps into the water she disappears (she is the same texture as water actually). Camera also doesn't work correctly when under water (on my Rebirth @ 825 MHz, latest Super Zaxxon, SGX 4.10).

Could you please have a look ?

Cheers, Magic Sam
 
Top