Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - trebor

Pages: [1] 2 3 ... 7
1
id Tech 4 Mods / Re: dmap in RBDOOM-3-BFG
« on: November 03, 2018, 09:34:08 AM »
I did this stuff years ago and never found time to document it.

You can convert any map from the old .map format to a new JSON based map format with the console command "convertMapToJSON game/<mapname>"

It will convert the brush and patch primitives to polygons that can be read into Blender. I wrote importers and exporters for Blender which are very very basic but allow to load the JSON file into Blender and export it back to RBDOOM without any los of data.
Converting brushes and patches to polygons is something that dmap already did. All I had to change was to tell dmap that it works with polygon based data.

Python supports JSON without the need of any libraries so getting this stuff into Blender was quite straightforward.

You can model maps in Blender and compile them with dmap in RBDOOM. Once they are compiled you can load them.
The only part that is still missing is that the AAS compiler has no clue about the new format as it still requires brushes.
It is something that could be fixed however I stopped working on RBDOOM because of lack of time.

Right now I'm porting RBDOOM to Vulkan with the help of the vkDoom 3 code by Dustin Land but this is more or less a learning excercise to get into Vulkan programming.

You can see how D3DM1 looks in Blender: https://imgur.com/a/GujrC8z

So instead of this brush data:
Code: [Select]
ersion 2
// entity 0
{
"classname" "worldspawn"
// primitive 0
{
 brushDef3
 {
  ( 0 0 -1 256 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/base_wall/lfwall27d" 0 0 0
  ( 0 0 1 -272 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/base_wall/lfwall27d" 0 0 0
  ( -1 0.0000001344 0 -192.0000152588 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/base_wall/lfwall27d" 0 0 0
  ( -0.0000001344 -1 0 -128.0000152588 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/base_wall/lfwall27d" 0 0 0
  ( 1 -0.0000001343 0 -191.9999389648 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/base_wall/lfwall27d" 0 0 0
  ( 0.0000001343 1 0 -256 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/base_wall/lfwall27d" 0 0 0
 }
}
// primitive 1
{
 brushDef3
 {
  ( 0 0 -1 -16 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/base_wall/lfwall27b" 0 0 0
  ( 0 0 1 0 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/base_wall/lfwall27b" 0 0 0
  ( -1 0.0000001344 0 -192.0000152588 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/base_wall/lfwall27b" 0 0 0
  ( -0.0000001344 -1 0 -128.0000152588 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/base_wall/lfwall27b" 0 0 0
  ( 1 -0.0000001343 0 -191.9999389648 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/base_wall/lfwall27b" 0 0 0
  ( 0.0000001343 1 0 -256 ) ( ( 0.015625 0 0 ) ( 0 0.015625 0 ) ) "textures/base_wall/lfwall27b" 0 0 0
 }
}
...
}
// entity 1
{
"classname" "info_player_start"
"name" "info_player_start_1"
"origin" "128 64 0"
"angle" "180"
}
// entity 2
{
"classname" "light"
"name" "light_2"
"origin" "-128 192 128"
"noshadows" "0"
"nospecular" "0"
"nodiffuse" "0"
"falloff" "0.000000"
"_color" "0.78 0.78 0.84"
"light_radius" "225 225 225"
}

it works with a format like this
Code: [Select]
{
"version": "3",
"entities":
[
{
"entity": "0",
"classname": "worldspawn",
"primitives":
[
{
"primitive": "0",
"original": "brush",
"verts":
[
{ "xyz": [192, -128, 256], "st": [-2, -2.998046875], "normal": [0.003921628, 0.003921628, -1] },
{ "xyz": [-192, -128, 256], "st": [-2, 3], "normal": [0.003921628, 0.003921628, -1] },
{ "xyz": [-192, 256, 256], "st": [4, 3], "normal": [0.003921628, 0.003921628, -1] },
{ "xyz": [192, 256, 256], "st": [4, -2.998046875], "normal": [0.003921628, 0.003921628, -1] },
{ "xyz": [-192, 256, 272], "st": [4, -2.998046875], "normal": [0.003921628, 0.003921628, 1] },
{ "xyz": [-192, -128, 272], "st": [-2, -2.998046875], "normal": [0.003921628, 0.003921628, 1] },
{ "xyz": [192, -128, 272], "st": [-2, 3], "normal": [0.003921628, 0.003921628, 1] },
{ "xyz": [192, 256, 272], "st": [4, 3], "normal": [0.003921628, 0.003921628, 1] },
{ "xyz": [-192, 256, 256], "st": [-4, -4], "normal": [-1, 0.003921628, 0.003921628] },
{ "xyz": [-192, -128, 256], "st": [1.9990234375, -4], "normal": [-1, 0.003921628, 0.003921628] },
{ "xyz": [-192, -128, 272], "st": [1.9990234375, -4.25], "normal": [-1, 0.003921628, 0.003921628] },
{ "xyz": [-192, 256, 272], "st": [-4, -4.25], "normal": [-1, 0.003921628, 0.003921628] },
{ "xyz": [-192, -128, 256], "st": [-3, -4], "normal": [0.003921628, -1, 0.003921628] },
{ "xyz": [192, -128, 256], "st": [3, -4], "normal": [0.003921628, -1, 0.003921628] },
{ "xyz": [192, -128, 272], "st": [3, -4.25], "normal": [0.003921628, -1, 0.003921628] },
{ "xyz": [-192, -128, 272], "st": [-3, -4.25], "normal": [0.003921628, -1, 0.003921628] },
{ "xyz": [192, -128, 256], "st": [-2, -4], "normal": [1, 0.003921628, 0.003921628] },
{ "xyz": [192, 256, 256], "st": [4, -4], "normal": [1, 0.003921628, 0.003921628] },
{ "xyz": [192, 256, 272], "st": [4, -4.25], "normal": [1, 0.003921628, 0.003921628] },
{ "xyz": [192, -128, 272], "st": [-2, -4.25], "normal": [1, 0.003921628, 0.003921628] },
{ "xyz": [192, 256, 256], "st": [-3, -4], "normal": [0.003921628, 1, 0.003921628] },
{ "xyz": [-192, 256, 256], "st": [2.998046875, -4], "normal": [0.003921628, 1, 0.003921628] },
{ "xyz": [-192, 256, 272], "st": [2.998046875, -4.25], "normal": [0.003921628, 1, 0.003921628] },
{ "xyz": [192, 256, 272], "st": [-3, -4.25], "normal": [0.003921628, 1, 0.003921628] }
],
"polygons":
[
{ "material": "textures/base_wall/lfwall27d", "indices": [0, 1, 2, 3] },
{ "material": "textures/base_wall/lfwall27d", "indices": [4, 5, 6, 7] },
{ "material": "textures/base_wall/lfwall27d", "indices": [8, 9, 10, 11] },
{ "material": "textures/base_wall/lfwall27d", "indices": [12, 13, 14, 15] },
{ "material": "textures/base_wall/lfwall27d", "indices": [16, 17, 18, 19] },
{ "material": "textures/base_wall/lfwall27d", "indices": [20, 21, 22, 23] }
]
},
...
{
"entity": "1",
"classname": "info_player_start",
"name": "info_player_start_1",
"origin": "128 64 0",
"angle": "180"
},
{
"entity": "2",
"classname": "light",
"name": "light_2",
"origin": "-128 192 128",
"noshadows": "0",
"nospecular": "0",
"nodiffuse": "0",
"falloff": "0.000000",
"_color": "0.78 0.78 0.84",
"light_radius": "225 225 225"
},
{
"entity": "5",
"classname": "light",
"name": "light_5",
"origin": "128 -64 128",
"noshadows": "0",
"nospecular": "0",
"nodiffuse": "0",
"falloff": "0",
"_color": "0.78 0.78 0.84",
"light_radius": "225 225 225"
}
]
}

2
Strutt your stuff! / Re: RBDoom3-BFG VR experiement
« on: July 17, 2016, 04:54:09 PM »
Cool stuff.

3
id Tech 4 Mods / Re: New old video format in BFG (.bik vs .roq)
« on: July 07, 2016, 01:57:45 PM »
RBDoom uses FFMpeg so you can change the code easily by adding support for different file extensions to play pretty much any common video format you want.

4
Strutt your stuff! / Re: fhDOOM (modernized idTech4)
« on: June 30, 2016, 07:41:36 AM »
I also appreciate your efforts with fhDOOM even if you don't support mods. It is very nice to see new code and innovations in the id Tech family.

5
Strutt your stuff! / Quake Champions: E3 2016 Reveal Trailer
« on: June 13, 2016, 03:01:46 AM »

6
id Tech 6 General Talk / Re: New Doom (2016) Thread
« on: May 20, 2016, 04:42:37 AM »
My first impressions with Doom was ... and that's it? I prefer a story telling shooter which really sucks me into another world where I can explore and discover an exciting adventure and relax from my daily routines.
Doom is a game that wants to be a game and it is like Q3A as single player and it also reminds me a lot of Quake 1.
I think Wolfenstein TNO is the best shooter in over a decade. Doom is good and I love the graphics but the absense of story is a bit weak IMHO.

7
id Tech 6 General Talk / Re: New Doom (2016) Thread
« on: May 19, 2016, 04:50:28 AM »
Some details about the tech:

8
id Tech 6 General Talk / Re: New Doom (2016) Thread
« on: May 17, 2016, 04:12:48 AM »
Friar you should try the D3 BFG edition. Loading times were reduced from 20 seconds to 3 in id tech 5 with the help of the binary formats.

9
Strutt your stuff! / Re: Arx is close to release
« on: April 18, 2016, 01:59:50 PM »
:(

10
Strutt your stuff! / Re: Arx is close to release
« on: April 18, 2016, 03:52:28 AM »
Nice. I can't wait to check this out.

11
Strutt your stuff! / Re: fhDOOM (modernized idTech4)
« on: April 12, 2016, 05:02:02 AM »
Runs like shit on AMD cards as always. The Soft Shadow, specially.

I'm somewhat glad to hear that :P

12
Strutt your stuff! / Re: fhDOOM (modernized idTech4)
« on: April 11, 2016, 02:54:37 AM »
Back in the days we found a nice scene (also located in the mars_city1 intro level) which very nicely replicates that popping issue and both your engines still produce it.



So the solution was simply to always force BackFaceLighting to get rid of it in your engines.

I fixed this in my latest build.

13
id Tech 4 Engine Coding / Re: RBDOOM-3-BFG 1.1.0 preview
« on: April 11, 2016, 02:46:31 AM »
I uploaded new binaries so you can test the latest HDR implementation.

https://github.com/RobertBeckebans/RBDOOM-3-BFG/releases/tag/1.1.0-preview3

14
Strutt your stuff! / Re: fhDOOM (modernized idTech4)
« on: April 10, 2016, 03:28:51 PM »
A Qt based light editor! Nice

15
Strutt your stuff! / Re: Perfected Doom 3
« on: April 08, 2016, 04:14:26 PM »
Nice reminds me of Quake 3 Arena which I really loved.

Pages: [1] 2 3 ... 7