View Full Version: Announcing RVGL

Re-Volt Live > News > Announcing RVGL

Pages: [1] 2 3

Title: Announcing RVGL


huki - May 1, 2015 06:45 PM (GMT)
See the Future of v1.2 thread for some background.
RVGL is a cross-platform rewrite / port of Re-Volt that runs natively on both Windows and GNU/Linux and uses modern, open source components to power it. We currently use OpenGL for the graphics, OpenAL Soft for the audio, SDL for input and OS specific support and ENet for networking.

We have playable builds for both Windows and Linux, so you can already test it. As of September 2016, we provide both 32-bit and 64-bit builds for both Windows and Linux.

user posted image

Download:
Get the latest RVGL build from the links below:
rvgl_17.1002a [ win32 | win64 | linux | dc pack | changelog ]

[spoiler=Installation steps for Windows]
  1. It is recommended, although not necessary, to install the latest v1.2 alpha first. This is required to set the folder permissions and update the registry entries for lobby launchers.
  2. Download the win32 or win64 7-zip archive, depending on your system, and extract it to your Re-Volt folder (you might have to install 7-zip first).
  3. That's it, you can now run rvgl.exe from the Re-Volt folder (or create a shortcut to it on your Desktop).
[/spoiler]
[spoiler=Installation steps for GNU/Linux]Setting up RVGL to run natively on Linux takes a bit more work. This is because the filenames on Linux are case sensitive (for example, "Parameters.txt" is not the same as "parameters.txt"). In such cases RVGL needs to know the exact filename to look for. To solve this problem, all the files inside the Re-Volt folder should be renamed to use lower-case names only. Fortunately, we provide automatic setup scripts to do the renaming for you.
  1. Download the linux 7-zip archive and extract it to your Re-Volt folder.
  2. Run the setup script found inside the Re-Volt folder (you might have to set execute permission for the setup script in order to do this). The setup script will automatically rename all the data files to lower-case, set the necessary file and executable permissions, and create an RVGL launcher on your desktop.
  3. Install dependencies required by RVGL, if necessary. See the next part for detailed steps.
  4. You'll now be able to run RVGL using either the desktop launcher or the 'rvgl' script in your Re-Volt folder. Depending on your system, this will start either the 32-bit or 64-bit rvgl.
  5. Note that when you install additional custom content like tracks or cars, you'll have to rename those files to lower-case. You can use the fix_cases script to do this for you (instead of having to run the entire setup again).
External libraries:
RVGL requires 'libgl' (provided by your graphics card driver), 'sdl2' and 'sdl2_image'. Installing the other libraries are recommended, but RVGL is able to run without them, by making use of libs included with the package instead.
See this post for a full list of dependencies. You can also get them from your package manager or Software Center. The exact steps can vary depending on your distribution, but feel free to ask for further help in case you're stuck.[/spoiler]
Todo:
  • Multiplayer & lobby support [done]
  • Texture formats (png / jpg) [done]
  • 64-bit native compile [done]
  • Unicode (utf-8) support
  • Shader based OpenGL implementation
  • Providing easy to use Linux package / Windows installer
  • Documentation / Tutorials / etc. to encourage more custom content
  • Integrating DC and demo content [done]
Feel free to test and post your feedback.

kay - May 2, 2015 07:01 AM (GMT)
Hello, first congrats for releasing RVGL and making it this far :)
Actually, it feels very similar to Re-Volt, but I know that behind that, there was an enormous work done. Excellent work!

Although, not sure but it feels like the textures are darker?

@Linux: About renaming thing, hmmm wouldn't be better to get all the text files then test it to lower case to parameters?

Also about the debug error wouldn't be better to print them on console instead of minimizing the window and showing the message?


Other than that, I'm pretty happy and satisfied with the current results :) hoping it will allow later to make advanced techniques, primarily shaders, animation and of course more textures effeciency (size / graphic compression)

Best regards!

ElectricBee - May 2, 2015 07:34 AM (GMT)
I will give this a bash in Linux some time soon. Right now, the game in practice mode at Toys In The Hood 1 is taxing my processor pretty hard as the frames like to drop here or there but it's definitely playable, and if you can brute-force frames with power then this port plays rather nice.

Can't wait for control options to become available and see how multiplayer is handled.

Gel38 - May 2, 2015 08:48 AM (GMT)
Wow! This is totally the direction that Re-Volt NEEDS to go! The game looks WAY better and runs WAY smoother on my lappy.

However, there's a few things that need some work (which i'm sure you guys know).

-The cars seem to handle slightly different. I don't know if it's because of the smoothness of OpenGL, or it is a viable fact)

-Cars which use RV 1.2's Camber setting have a funky thing going on in which, as you turn the wheels, they don't actually turn, but rotate 360 degrees, then do it all again. (I think they turn relative to the starting position of the track, as, when you turn right or left, they stay in that same relative position.) It's rather odd.

-Lastly, just seeing on the fly, No options. Can't set my buttons and such. Kinda annoying.

I do understand that this is the 1st release. Get it to do everything like RV 1.2 does (features and such), then you've got some gold. This is totally the right direction for the game though. I'm loving it!

ElectricBee - May 2, 2015 09:29 AM (GMT)
error while loading shared libraries: libSDL2-2.0.so.0: cannot open shared object file: No such file or directory

Linux Mint 17.1 x64, file located in /usr/lib/x86_64-linux-gnu/libSDL2-2.0.so.0

I've done all I've could with my somewhat-limited knowledge of Linux, and I am no terminal pro yet. If anyone can find a resolution to that as I nap, that would be lovely, thanks. :)

Gotolei - May 2, 2015 02:38 PM (GMT)
32-bit program, so you'll want the i386 version.
Fun part is that for some reason the i386 packages of libsdl2 and libalure aren't listed in package managers from what I've seen.

If/when you have multiarch enabled (not sure why he only links archwiki, usually it's useful but here it's too specific) can just do it CLI instead:
CODE
sudo apt-get install libsdl2-2.0-0:i386 libalure1:i386


Worked for me anyways. The launcher stubbornly refuses to run even when made from scratch, but the executable itself runs about as well as expected for an early build.

ElectricBee - May 2, 2015 04:20 PM (GMT)
That should do it. I forgot you could use :i386 with apt-get on x86_64 builds of Debian for some reason.

ElectricBee - May 2, 2015 04:28 PM (GMT)
This is definitely an 32-bit only game. libmodplug1:i386 conflicts with gstreamer and vlc so installing that would remove those applications.

I would rather not force the issue with Linux and play without sound until you guys figure out how to make a 64-bit compatible build that doesn't step on any other package's toes. I'll update this after my playthrough with it.

Update: The top half of my screen tears like mad. But the game runs smoothly. Is there any way I can resolve the screen tearing on my end? I use a Dell Inspiron 17R N1170. Otherwise I'm going to put a 32-bit OS installer on stick and run with that for a more comprehensive test.

huki - May 2, 2015 04:40 PM (GMT)
QUOTE (ElectricBee @ Saturday, May 2 2015, 21:58)
This is definitely an 32-bit only game. libmodplug1:i386 conflicts with gstreamer and vlc so installing that would remove those applications.

Quick answer to this one: libmodplug is not needed, you might get a "missing" message in the console but rvgl should run without it, and sound should work too.

Edit: And I've now updated the first post to provide multiarch links for both Debian and Arch.

huki - May 2, 2015 05:14 PM (GMT)
QUOTE (kay @ Saturday, May 2 2015, 12:31)
Hello, first congrats for releasing RVGL and making it this far :)
Actually, it feels very similar to Re-Volt, but I know that behind that, there was an enormous work done. Excellent work!

Thanks kay, and indeed there has been lots of work behind the scenes to achieve the current results.
QUOTE
Although, not sure but it feels like the textures are darker?

It could be brightness / contrast (gamma settings). We don't support it in rvgl yet (and I don't think it can be supported the old way actually.. maybe it's enough to use the controls on the monitor?)
QUOTE
@Linux: About renaming thing, hmmm wouldn't be better to get all the text files then test it to lower case to parameters?

The "Parameters.txt" case was just an example. Using lowercase is the only way we can find various other hard-coded files. Also consider the case where the car's parameters file points to a specific model or texture, like "cars\MyCar\MyCar.bmp" but the actual file has a different case, maybe mycar.bmp or myCAR.bmp. In rvgl we consistently convert all the level.inf and parameters.txt path entries to lower case (and forward slash), so we should remember a simple rule: that all the data files inside re-volt folder should only use lower-case characters.
QUOTE
Also about the debug error wouldn't be better to print them on console instead of minimizing the window and showing the message?

Hmm good idea.. in fact I turned on the console by accident, I'm going to keep it disabled for now. But logging error messages to the log file and console is something to consider for later.
QUOTE
Other than that, I'm pretty happy and satisfied with the current results :) hoping it will allow later to make advanced techniques, primarily shaders, animation and of course more textures effeciency (size / graphic compression)

Yep, I hope so too...

QUOTE (Gel38 @ Saturday, May 2 2015, 14:18)
Wow! This is totally the direction that Re-Volt NEEDS to go! The game looks WAY better and runs WAY smoother on my lappy.

However, there's a few things that need some work (which i'm sure you guys know).
[...]

Great, thanks for the feedback, we're going to check the reported bugs.

huki - May 2, 2015 05:21 PM (GMT)
Some notes about the latest build, about logging some useful info and on how to configure rvgl by editing the ini which I've also posted on ORP.. would be nice to see everyone's logs.. :)

How to get hardware info: After you run rvgl, you can check inside the "profiles" folder for a re-volt.log file. This will contain some info about your OpenGL hardware and it would be helpful if everyone post theirs.
To log audio info you can run the alsoft_log script file (that is included in both win32 and linux packages). The script will start rvgl, then you can close it and find an alsoft.log file in the "profiles" folder. You can post that too (maybe use pastebin as it can be big).

Configuring options: The options menu is not completed yet, but you can configure settings by directly editing the ini files. Of course, setting joystick and buttons is not yet possible. Edit the "rvgl.ini" in the "profiles" folder to configure audio/video settings.
To enable Anisotropic Filtering: In "rvgl.ini" make sure "TextureFilter" is 1, then set the "Anisotropy" entry to 2, 4, 8 or 16 (or 32 in newer cards). Setting Anisotropy to 1 (the default) disables anisotropic filtering.
"TextureFilter" takes 0 (Point) or 1 (Linear). "MipmapFilter" takes 0 (disabled), 1 (Point) or 2 (Linear).

Skarma - May 2, 2015 05:23 PM (GMT)
QUOTE (huki @ Saturday, May 2 2015, 18:14)
In rvgl we consistently convert all the level.inf and parameters.txt path entries to lower case (and forward slash), so we should remember a simple rule: that all the data files inside re-volt folder should only use lower-case characters.

Is this going to be a thing? Like, any car that has files that don't have lowercase letters won't work in RVGL? Is this also the case for any future cars that are released?

huki - May 2, 2015 05:26 PM (GMT)
QUOTE (Skarma @ Saturday, May 2 2015, 22:53)
QUOTE (huki @ Saturday, May 2 2015, 18:14)
In rvgl we consistently convert all the level.inf and parameters.txt path entries to lower case (and forward slash), so we should remember a simple rule: that all the data files inside re-volt folder should only use lower-case characters.

Is this going to be a thing? Like, any car that has files that don't have lowercase letters won't work in RVGL? Is this also the case for any future cars that are released?

Well, first of all this only applies to Linux, not for Windows. For Linux users we provide scripts that automatically convert all the files to lower-case so there is not much to worry about for existing cars.

For future cars, car makers should remember to only use lower-case names - if they plan to support the Linux version of RVGL out of the box. Otherwise the user would have to manually run the script after installing the car...


Skarma - May 2, 2015 05:52 PM (GMT)
Alright, that's fine. I'm assuming files that aren't directly associated with RV (for example; a readme or a picture of the car for RVZ) won't matter?

ElectricBee - May 2, 2015 06:30 PM (GMT)
32-bit gameplay is practically flawless. No issues there.

I'll test with a 64-bit installer later.

lu9rv - May 2, 2015 07:45 PM (GMT)
This is amazing! Good job on everything, I didn't think the textures were darker, but I did notice a bit of difference in the handling of cars. But anyways, keep up the great progress, also, love how languages aren't hard-coded anymore, now I can get my portuguese translation done right :D
(also, much like some other modern games, someone should make a "Pirate Speak" language, just for fun, lol)

Oh, BTW, is the Track Editor also going to be remade or not?

ElectricBee - May 2, 2015 09:22 PM (GMT)
64-bit gameplay for some reason was not jacked up when I was running from the 64-bit Linux Mint installer. But it's still messy to install as I still have to remove multiarch libs for a bunch of stuff to install libsdl2-2.0-0.

So because of that, should I reinstall as-is after installation, amd64 only or i386 only?

lu9rv - May 2, 2015 09:27 PM (GMT)
I also noticed that the 3D sound in some tracks (user tracks btw) has a longer range than it should have...

MarvTheM - May 3, 2015 07:46 AM (GMT)
Some things are indeed different, I don't worry too much about it. 3D sounds sound overall better and louder, on 'Industry' they sound how I actually intended them to.
Then there are the mipmaps that behave differently. On 'Industry' again, it seems to ignore the high res bitmaps (I named them inorrectly), so that might be just a indicator that those work correctly now (I couldnt get them to show up until I renamed them, so bmp ended up to be 512).
This is just perfect and polished, even for an alpha release.
I am hugely impressed, you have all my respect.
I wish you all the best with the project. Should you ever need help, you know we're here.

Nero - May 3, 2015 09:07 AM (GMT)
For an Alpha it seems relatively stable, and Steam Overlay works on RVGL too now. Good job. *like*

ElectricBee - May 4, 2015 08:41 PM (GMT)
So nobody else is going to investigate into making 64-bit installation easier? I would love to see a package for this some time in the future, if at all possible.

huki - May 6, 2015 05:56 PM (GMT)
Just to inform that I have quickly updated the RVGL page in our website.

Citywalker - May 7, 2015 03:53 PM (GMT)
Just as quick typo notice:
"Welcome to the RVGL proect page"

huki - August 7, 2015 03:07 PM (GMT)
[offtopic]Hi again.. busy these days and also had no PC for a few weeks inbetween... but I finally have some news to share! I'm replicating my post from ORP[/offtopic]

I'm making steady progress with the network. ENet is great to work with.. :) Soon I'll be able to release a new build to test online.
There is going to be a significant change in this initial version: I've worked on a client / server implementation rather than pure P2P as it's more straightforward to do with ENet. It means clients will not communicate directly with each other but through the host, similar to what was requested in this post. Pure P2P could be a later addition if it's found to be needed.

Otherwise what we can expect to see in the upcoming build is:
  • Non-blocking session hosting (does not block for a few seconds upon 'Start Game').
  • Host binds to a single port (UDP only, currently hard-coded to 2301).
  • Displays both the external and internal IP address of the host. External IP is queried through dyndns.org upon session start (may time-out sometimes, current implementation does not retry).
  • Automatic discovery of LAN session (client doesn't need to enter the host IP).
What is still pending:
  • There is no in-race synchronization yet. This shouldn't be a problem unless the black screen sync fails resulting in a bad start. We'll see if bad starts are common with this version or not, I'm curious to see some results.
  • Lobby support (may need changes to rvhouse, though it should be straightforward)
  • Sessions listing (i.e., when multiple sessions are hosted on LAN)
  • Some menus, waiting room / players list information still missing.
Fun moments with I, me and myself: they're pretty hard to beat, damn...

user posted image
***
user posted image
***
user posted image

(Ok, I admit the 3 of them were AI controlled...)

Marv - August 7, 2015 04:01 PM (GMT)
This looks so much better than Re-Volt's original network stuff. Thank you for dedicating your time to this.

kay - August 7, 2015 04:28 PM (GMT)
QUOTE (huki)
Fun moments with I, me and myself: they're pretty hard to beat, damn...

:roflmao:

So far excellent work! This would actually allow bots to play online :)
I'm actually a little concerned about AI? is it possible to put [AI] as tag name :) (like CHT I mean) ?

Red_Ricky - August 7, 2015 07:54 PM (GMT)
Uhm RVGL???
Did i miss something? :huh:

ElectricBee - August 7, 2015 09:09 PM (GMT)
You missed a lot.

I am going to be on and off with Microsoft Windows with RVGL, because I want to test the everything, everywhere, whenever netplay becomes something I can access in-game.

I deleted RVGL on my Linux OS I believe, because eventually they'll set up a package repo, or somebody else will grab the torch and do so. I'm active a bunch, but too lazy to learn how to compile a Debian package correctly.

Once it's in any format, Alien could be used to convert the package into other formats for different software management suites but that's the lazy-ass way of doing it; Developers are better off putting all their necessary assets into a single folder and have a script that opens and pipes commands to different VMs as necessary for compiling into different formats they want to distribute in.

dbs213 - August 8, 2015 01:48 AM (GMT)
Can anyone set up an RVGL "suggestion box" thread?

I missed most of WolfR4's features when I switched over to 1.2 since people were posting cars and tracks made for the update.

huki - August 12, 2015 06:14 PM (GMT)
I'm releasing the new rvgl build with online support, you can get it from below:
rvgl_15.0810a_win32.7z
rvgl_15.0810a_linux.7z
changelog

Of course, it doesn't have RVHouse lobby support yet, but it can already be played by IP. Leave the Host Computer field blank to join a session on LAN.
BTW, I've merged the work done by jigebren in v1.2 up until the last alpha, so those online improvements / lag management are included. The timers sync is incomplete though... as I had said in my previous post, it should be ok as long as the sync at the black screen is successful. Before I finish this part, I would like to know how many bad starts you get with this version in a usual online session.
Also be sure to upload your log file after testing it.

Linux users will need to to install libenet from their package manager.

huki - August 14, 2015 10:00 AM (GMT)
After some reports from ORP I have fixed several bugs including a conflict with RV House because we were using the same port... I had earlier used port 2301 for rvgl as it seemed standard for me, but now I know why it sounded standard. :rolleyes:

Here's the bugfix release 15.0814a:
rvgl_15.0814a_win32.7z
rvgl_15.0814a_linux.7z
changelog

The website has also undergone minor changes / cleanup (oh, and fixed the typo noticed by City). I have also added the thread from the Italian ARM site to the list of RVGL forum threads. If some elements seem off, reload the page using F5.

huki - August 25, 2015 07:01 PM (GMT)
I'm releasing a new build 15.0825a 15.0827a with several improvements.
rvgl_15.0827a_win32.7z
rvgl_15.0827a_linux.7z
changelog

Spectating mode is now available. International keyboards support is back and this time it should handle virtual keyboard layouts better than before: dead keys (eg, typing ' followed by e to get ) are now working. I have only tested in Linux so far so let us know if it's working on Windows.

Edit: updated post with a fixed build.

RyMi - September 17, 2015 06:23 PM (GMT)
*like*

Wasn't sure where to chime in at, so if you want feel free to move my post. Not trying to hijack.

Love what you guys are doing, keeping the old game alive. Long time fan here, played it back on my cousin's Dell in the late 90s. Own a few copies of it as a result. Trying to get the latest solid update and figure out how to run it across three screens at a res of 5760x1080. Feel free to email me at RSwartzy at msn

I own an entire LAN (9 gaming PCs, I own about 15 that could play this game) for friends at home (for gaming) and do some IT stuff for the mil and am hoping to get the old game (new and improved) running across it as well. Thanks in advance!

~Ry

huki - September 18, 2015 03:30 PM (GMT)
QUOTE (RyMi @ Thursday, Sep 17 2015, 23:53)
*like*

Wasn't sure where to chime in at, so if you want feel free to move my post.  Not trying to hijack.

Love what you guys are doing, keeping the old game alive.  Long time fan here, played it back on my cousin's Dell in the late 90s.  Own a few copies of it as a result.  Trying to get the latest solid update and figure out how to run it across three screens at a res of 5760x1080.  Feel free to email me at RSwartzy at msn

I own an entire LAN (9 gaming PCs, I own about 15 that could play this game) for friends at home (for gaming) and do some IT stuff for the mil and am hoping to get the old game (new and improved) running across it as well.  Thanks in advance!

~Ry

Both the original re-volt and v1.2 have a limitation of 2048x2048 for the screen resolution as they depend on DirectX 6. So your only choice is to use the new RVGL port (this project). It's still WIP but should be stable. Just get the latest build from this thread, or the webpage.
To actually be able to select a triple-screen resolution you'll need support from your graphics card. Nuc has achieved this in the past with the v1.2 patch (see some of his videos like this one). I think he used dual Nvidia cards with an SLI setup. Of course, being v1.2 it was limited to a resolution lower than 2048x2048.
RVGL has not yet been tested in this kind of setup, so if you're able to get it working feel free to post some screenies. :)

RyMi - September 18, 2015 04:21 PM (GMT)
I have an AMD 280x and can pull a second from my other system for X-fire if need be. I can play TF2 without being quite maxed on some settings like AA, across the three monitors. I have an eyefinity setup working off the one card and its capable but not ideal for more intensive games. I find it easy enough to limit most games to one screen. I really got the setup for Fallout 4, but the stand I'm using puts the monitors too close and I get feeling sick from it. Ideally it should be about 3 feet away or more and I think having them flat rather than angled around me may work best. I will have to play around some more. If I can get your release running on Win7 Pro x64 I'll show some screenies if I can get it working on all three monitors. Thanks for your response. Also got a PM from someone else here.

ElectricBee - September 18, 2015 08:52 PM (GMT)
A potential workaround for this might be to use a third-party application to remove the window decoration in rvgl.exe and use -window x y -aspect x:y but things might get funny then.

It is a bit harder to do this in Windows, but applications for performing the above exist.

Dave-o-rama - September 26, 2015 12:43 AM (GMT)
Is this the right place to report a bunch of bugs (or, rather, RVGL not really working at all on my machine)? Or should I head over to ORP and share my sob story there?

Phantom - September 26, 2015 01:19 AM (GMT)
QUOTE (Dave-o-rama @ Friday, Sep 25 2015, 21:43)
Is this the right place to report a bunch of bugs (or, rather, RVGL not really working at all on my machine)? Or should I head over to ORP and share my sob story there?

Can you try this Dave and tell me if it works?
https://dl.dropboxusercontent.com/u/1040512...%20Portable.rar

Dave-o-rama - September 26, 2015 05:41 PM (GMT)
QUOTE (Phantom @ Friday, Sep 25 2015, 20:19)
Can you try this Dave and tell me if it works?
https://dl.dropboxusercontent.com/u/1040512...%20Portable.rar

I'm afraid I'm getting the same results as the most recent build huki uploaded. With this version, the game runs a little faster, but that's not saying much. In both builds, I'm running at, like, <10 FPS, no textures are loaded (which makes the Probe intro a total mess), and the frontend looks like this (it's a large image).

It may be something with my system, specifically, since I can't run Fez, MotionBuilder, or some things in Maya, either.

huki - October 25, 2015 04:27 AM (GMT)
New RVGL build 15.1025a is released.
rvgl_15.1025a_win32.7z
rvgl_15.1025a_linux.7z
changelog

This release brings lobby launching support. See the dedicated thread for more info on how to integrate lobby launchers with RVGL. Taking advantage of this requires changes to RV House and Gameranger, but it can already be tested by manually entering the command lines. Be sure to continue further discussion about this in the dedicated thread (or create one in RVL).

I've also added a new command line -nopause. It's an alternative to the Shift+F9 shortcut in dev mode and this command line works even without dev mode.

For GNU/Linux users, there is an important change that affects the enet library. I recently upgraded my system to Xubuntu 15.04 and the enet lib is upgraded to libenet7 (1.3.13) from the previous libenet2a (1.3.11). These 2 versions are likely backwards compatible, but unfortunately they are named differently. Anyway, it means that if you are using an Ubuntu 14.04 based distro (such as Linux Mint) or old Debian distros, you would have to manually create a symlink of your libenet.so.2 to libenet.so.7.




Hosted for free by zIFBoards