23-02-13, 21:21 | #1 |
Member
Joined: Aug 2010
Posts: 1,809
|
OpenTomb project
OpenTomb (formerly TRE) is an engine replacement project intended to play levels from all classic TR games (TR 1-5) and custom levels. For latest updates, downloads and source code, refer to OpenTomb official page. Latest news on project are currently available through ModDB entry. Also, check out our official YouTube channel! Last edited by Lwmte; 28-07-15 at 13:22. |
23-02-13, 21:22 | #2 |
Member
Joined: Aug 2010
Posts: 1,809
|
OpenTomb Features:
FAQ:
Controls OpenTomb supports mouse, keyboard and joystick (force feedback support included for XInput controllers). Mouse is used for positioning camera, analog joystick/gamepad sticks also may serve the same purpose. As for button actions, all of them may be remapped via configuration file with "bind" command. Button keycodes are placed into "scripts/control_constants.lua" file (you can open it with any text editor). If you're using joystick, note that joystick buttons are coded as JOY_ + button number, e.g. joystick button 1 should be coded as JOY_1 config file, joystick button 4 will be JOY_4, and so on. As for POV switch, directions are coded JOY_POVUP (up), JOY_POVDOWN (down), JOY_POVLEFT (left) and JOY_POVRIGHT (right). Also, note about XInput controllers (XBOX360 controller and equivalents): its triggers have their own button names - JOY_TRIGGERLEFT and JOY_TRIGGERRIGHT. If you have gamepad which can switch between DirectInput and XInput modes, each mode will use its own mapping, but I recommend to use XInput mode anyway, cause it also supports force feedback. Here is the default OpenTomb key mapping: W / S / A / D — Forward / back / left / right. SPACE — Jump / crawl jump CTRL — Action (grab the ledges) / shoot F — Draw weapon (select it via 1-7 hotkeys first!) SHIFT — Walk / swan dive CAPS LOCK — Sprint (if CAPS is on, Lara will always sprint) V — Crouch Z — Reset animation state (to get out of bugged states) N — Noclip mode PRINT SCREEN — Take screenshot F5 — Quicksave F6 — Quickload Console command reference Currently, OpenTomb has no menus, HUD or graphical UI, and only uses console for command input. To invoke console, press ~ key. Here is the brief list of console commands to use:
Screenshots & videos: Developers TeslaRus: main developer. Cochrane: renderer rewrites and optimizing, Mac OS X support. Gh0stBlade: renderer add-ons, shader port, gameflow implementation, state control fix-ups, camera programming. Lwmte: state and scripting fix-ups, controls, GUI and audio modules, trigger and entity system rewrites, hair and ragdoll code. Nickotte: interface programming, ring inventory implementation, camera fix-ups. pmatulka: Linux port and testing. Richard_trle: Github migration, Github repo maintenance, website design. Saracen: room and static mesh lighting. stltomb: general bugfixing and maintenance. stohrendorf: CXX-fication, refactoring and general code optimizing. T4Larson: general stability patches and bugfixing. vobject: nightly builds, maintaining general compiler compatibility. vvsgh: extensive testing, issue management on Github. Additional contributions from: Ado Croft (extensive testing), E. Popov (TRN caustics shader port), godmodder (general help), jack9267 (vt loader optimization), meta2tr (testing and bugtracking), shabtronic (renderer fix-ups), Tonttu (console patch) and xythobuz (additional Mac compatibility patches). Translations by: Joey79100 (French), Nickotte (Italian), Lwmte (Russian), SuiKaze Raider (Spanish). Contribute to project There were numerous attempts in TR engine reconstruction – OpenRaider, VT project, OpenTRX, TRPlayer, RetroFit... All of them were merely solo projects, and unfortunately, none of them reached final release or at least playable beta stage. Main point is, the more people work on a project, the more chances it will success. So, if you love classic Tomb Raiders and can program in C++, it will be wonderful if you can contribute to OpenTomb development! Just post a request here or contact TeslaRus or Lwmte through private message and tell us what you can do! Currently, ToDo list is pretty large: item interaction, graphic enhancements and menu system! For those who want to contribute: we now have extensive tutorial on how to make OpenTomb integrate into Code::Blocks IDE. Last edited by Lwmte; 31-07-15 at 14:15. |
23-02-13, 21:55 | #3 |
Member
Joined: Mar 2012
Posts: 228
|
This is one of the best thing that could happen to the tr modding community! the scope of the project is huge and the commitment of teslarus is truly remarkable. I hope that I will find time in the next months to dig deep into the code. Btw I'm glad you followed the advise and chose bullet
|
24-02-13, 08:19 | #4 |
Member
Joined: Jan 2013
Posts: 195
|
Bullet
This time I fully delete collide.cpp, trace.cpp. All physics works through bullet. I use dynamic rigid body (capsule with AngularFactor(btVector3(0.0, 0.0, 0.0)) ) as a character. Movement implemented with SetLinearVelocity function. To eliminate overlapping room collision I add btOverlapFilterCallback and check current room of the object (engine.cpp). But I have problems:
1) How to correct implement slopes? 2) Maybe bullet character controller is better than dynamic rigid body stick? Last edited by TeslaRus; 28-02-13 at 13:43. Reason: I add filter to convex sweep test. One problem solved. |
10-03-13, 21:40 | #5 |
Golden
Joined: Apr 2006
Posts: 16,751
|
I just realized that I had completely forgotten about the Mac OS X port. Sorry about that. Anyway, I've now updated it to the latest version on Sourceforge:
As always, the source code is in my fork of the Sourceforge repository. There's some ugliness in the commit messages, but the code should all be valid: https://sourceforge.net/u/zcochrane/tr1engine/ For those feeling adventurous, but not up to using Xcode, here's a binary: http://ferroequinologist.de/gllara/t...gine-mac-2.zip To use this:
This isn't yet the most elegant workflow. If you have any better suggestions how the app should work, I'd be glad to implement them. Especially if it makes the Mac version better than the Windows one. |
11-03-13, 01:59 | #6 |
Member
Joined: Oct 2008
Posts: 13,177
|
I think this is a neat project that will really change how custom levels are designed in the future.
However, wouldn't the original TR games be left unplayable in this engine since the collision system is completely re-written? |
11-03-13, 08:16 | #7 |
Golden
Joined: Apr 2006
Posts: 16,751
|
I wouldn't worry too much about the original games. Their design is generally sane, with very few tricks used. There are not a lot of cases where the graphic geometry does not match the collision geometry; of the top of my head, I can only name water, cobwebs and the like, and the engine will have to support that anyway. You will be able to climb on any static mesh, and that will open up new exploits and shortcuts, and there are a lot of details that need to be handled properly, but I don't see those as big problems.
What I'm really interested in is how overlapping rooms and paperthin walls and the like will work. Those can be major challenges, because your typical physics engine is not prepared for them out of the box. |
11-03-13, 14:15 | #8 |
Member
Joined: Jan 2013
Posts: 195
|
Character controller
Hi all! Bullet is very interesting physics engine. I found way to solve overlapping rooms problem and add RMB (right mouse button) test function to select objects (and switch animations by q - e buttons) or delete test spheres. But I did not make an alternate room filter.
In this time I make character controller (bullet's one does not approach to the Lara behavior). I use as a character dynamic rigid body (capsule shape) with angular factor 0. It allows to push items or be pushed by them. But using dynamic rigid body as a character prevents to ugly shake while mowing and I do not know how to realize slopes. |
15-03-13, 19:46 | #9 |
Member
Joined: Aug 2010
Posts: 1,809
|
It means you have fixed TRLE level loading? But I can't see any difference in TR4 level loader in your fork... Or the problem was somewhere else? I remember TeslaRus told about some zlib errors while unpacking TRLE levels.
|
17-03-13, 04:41 | #10 |
Member
Joined: Dec 2009
Posts: 5,152
|
I'd love to see some video of some new effects in action. This is amazing especially because of cross-platform support!!
|
Thread Tools | |
|
|