User:Mai X

From OniGalore
Jump to navigation Jump to search

Hi! I'm just a 17 years old girl from Russia. I'm new to Oni Community, but I really love this game! Currently I'm trying to explore GeySer's lightmapping method with new software.

Second Objective ^_^ of my work is to change level geometry a bit (but it is not random changing). I'm trying to re-create look&feel of PRE-Beta levels, but this project is just starting right now (and not really successfully). The only improvement (not counting Lightmaps) that stays in Work-In-Progress stage is Transparent Railings in TCTF HQ (as here, in "The Atrium" section). When I'll finish it, I'll upload the resulting images and compressed 7-Zip file with level to my G-Drive.

Mai X user page.png

GeySer's Lightmapping method

About GeySer's lightmapping method: Some links on his 'lightmap' page are dead. And files are lost forever. So there are some new links and features for lightmapping:

  • Global Illumination in Cycles (instead of original Radiosity) - this is new feature in Blender which uses emissive materials. We need it because Radiosity was removed from Blender since v2.50.
  • Multi-Tile UV or UDIM UV tutorial - UDIM UVs are used for applying multiple textures to one object with one UV channel. This technology can be used instead of Multi-Lighmapping script. That original Multi-Lightmapping script is gone.
  • UDIM Baker addon (also avaliable here, on my G-Drive) - This is an essential part of working with UDIMs. You cannot bake all UDIM tiles with regular Bake button in Blender. So this addon brings the ability to bake all UDIM tiles with just one click.

But the main issue with UDIM is still exist: does OniSplit support UDIM and can COLLADA geometry with UDIM UVs be imported into Oni correctly?

IMPORTANT!!! Remember to set up higher number of samples in Render section for good-looking lightmaps. But baking these images will take really long time!

TCTF HQ Railings

Yes... I'm still trying to do this. Here is the video that demonstrates Transparent Railings with new laser holders.

Some visual improvements

Here at 0:21 and 1:45 I can see some difference in character lighting. Directional light is much brighter than one that I have in Retail-version. And 'old' light has some different colors.
1. Brightness. It can be easily fixed by typing smaller float values instead of the variable "flat_lighting_amount". It will affect ^_^ the ambient character lighting.
2. Colors. For changing colors of Gouraud you'll need to change values of the "light_DirectionalList[itr].color.*" variables. '*' can be r, g or b.

Here are some screens of my work:

  • 1, 2, 3 - these 3 screens also demonstrate successfully imported lightmaps (which were made with a help of GeySer).
  • 4, 5 - these 2 screens show the main drawback of this lightmapping method: no colored lighting support. But the character lighting (Gouraud) looks really great ^_^!!!

I've added a new BSL function - gs_nearclipplane_set. I need it, because some of my camera works are too close to the geometry, so glitches apear.
Here is an example of usage of my BSL function (left - before, right - after): [Video]

Some explanations about my 3D-software

Firstly, I'm using Avid|XSI 2015 (a.k.a. Autodesk Softimage, Softimage|XSI) for transfering 3D-models and geometry from OniSplit to other 3D-software. The main reason of XSI usage is that OniSplit-exported COLLADA files are not fully compatible with Blender (all versions). Blender's Cycles renderer makes every material black during importing process. Eevee renderer does nearly the same thing but it makes all materials white, so the Emission shader does not work neither in Cycles nor in Eevee. But only before the first 'save project' action. After opening the project again, all materials are normal in Cycles and Eevee.

After re-exporting COLLADA from XSI, I import it to Blender v2.49. Yes, I'm still using this old version of Blender, because it has one very important (for me) feature, that newer versions do NOT have. It can divide geometry to meshes by materials. I need this feature, because I don't want light objects to be shaded or lighmapped as other regular objects.

The third and the most important thing is Radiosity (as it was said on GeySer's 'lightmapping levels' page). I do not use old Blender for Radiosity calculations, because it has some big limitations. I use Autodesk 3D Studio for Radiosity calculations, because its implementation of Progressive Refinement Radiosity renderer is much more flexible than Blender's. Originally, Progressive Refinement Radiosity renderer was introduced in LightScape Visualization System (1995) (here is a demo of LightScape), but after some time LightScape VS became an Autodesk product and it was discountinued. All its Radiosity techniques were transfered to 3D Studio VIZ (later, to a regular 3D Studio), so for now 3D Studio 2011 is my choice ^_^.

After calculating Radiosity solution, Rendering it To Texture and exporting all geometry to a COLLADA file, I import it into XSI (again 0_-). The explanation is simple: COLLADA from 3D Studio has some different implementation of tranparency parameter, so if I import 3D Studio's COLLADA directly to Oni, I'll get no visible object and evironment (only SkyBox ^_^). That's why Avid|XSI is my solution to everything. After exporting geometry from XSI, I can (finally) import it to Oni... Finally ;) !!!

My (and not only) 3D-models

Here is the list of Oni-ready 3D-models, that I have:

  • Elevator Shaft - remodelled by GeySer from the film "Speed" (1994).
  • Nissan Pathfinder R51 - remodelled by me from the "Sled" (russian detective TV-series, 2007-now).
  • Volvo S60 R-2005 - modelled by me from my father's car.

Not all links are available for now. I'm not sure, that I have any ability to share GeySer's "Elevator Shaft" 3D-model -_-. For now, only links to my models are available.

Here is a demo-video of Volvo S60 imported to Oni.
Engine was working on it's maximum abilities ^_^. The number of polygons is at least 9 000 for every part of the Volvo (parts are: RL, RR, FL and FR wheels, interior, exterior and steering wheel).
Music from the video is GRABBAG.MID from Duke Nukem 3D, that was replayed by me (not completely) on my Casio Privia PX-130. You can see a "placeholder" at the end of the video. It means - "Coming Soon...".
Note: Motion Blur was added in After Effects during the Post-Production.

High-Resolution Oni Pictures

I have Intel Core i5 6300U, 16GB of RAM and some free time, so I can upscale some EPS or SVG pictures from Oni archives in 10 or 20 times.
All result images will be uploaded to my G-Drive in 7-Zip format with "Ultra" compression. 7-Zip will contain uncompressed TrueVision TGA images.

Modified BFW engine

I've finally added some new features to the engine.
For now there is the list of fully-implemented features:

  1. gs_nearclipplane_set (BSL command for near clipping plane control)
  2. 4096x4096 texture support (for GeySer's lightmapping method)
  3. pre-advanced lighting (lowered ambient light and adjusted gouraud light)
  4. gl_fog_disabled (BSL command for disabling fogging)
  5. record_sequence (BSL command for dumping a screen shots at every frame, eq to Ctrl+Alt+L)
  6. film_record (BSL command for FILM recording. When it is set to 1, it is eq to FKEY-9. When it is set to 0, it is eq to FKEY-10)
  7. fully-disabled mip-mapping (I just don't need it now)
  8. NoShade texture flag (the texture whith this flag will not recieve any fog or shading. The same as AdditiveBlend texures, but without additive blending ^_^. Implemented to engine, waiting the OniSplit SRC from GeySer.)

Here is the list of partially-working features:

  1. Holographic character lighting (special lighting and jitter effects, that can be activated via holographic_light command. The lighting is affecting only characters, but the jitter is affecting all objects, that have same transformation matrix with characters. I'm trying to implement reverse-translation effect for other objects, exept characters.)
  2. 8192x8192 texture support (experimental, too unstable on my ThinkPad X260, but on my Sony VAIO VGN-SR19VRN works just fine.)
  3. pseudo-smart TXAN (displays the first avaliable frame, when stop_texture command is set to 1. But when it is set to 0, every TXAN becomes regular TXAN).

That's all for now. My own version of BFW is simply called BFW-17 (Konoko's Edit). I'll upload the EXE to my G-Drive as soon as it will be possible. But my SRC will be avaliable only for GeySer -_-.

12:37, 24 November 2021 (CET)