Massassi Forums Logo

This is the static archive of the Massassi Forums. The forums are closed indefinitely. Thanks for all the memories!

You can also download Super Old Archived Message Boards from when Massassi first started.

"View" counts are as of the day the forums were archived, and will no longer increase.

ForumsShowcase → Possible way to do lightmaps in JK
12
Possible way to do lightmaps in JK
2003-09-27, 10:08 AM #1
Topic: Lightmaps in Jedi Knight

I may have found a way to do lightmaps in JK. A while back, Hellcat was showing off some 3do terrain for team battle. It included shadows that were actually part of the texture. The question came up on whether or not it was possible to use this same process on a whole level.

Yesterday, I realized that this was totally possible, yet extremely inefficient. Consider the Quake III lighting process:
[http://members.lycos.co.uk/mystic0/q3light.gif]
typo- it should say “… from each texel (texture-pixel)

Jedi Knight does not support lightmaps (well duh). But it does however, allow you to scale texture sizes down indefinitely. This means that it is possible to use ultra high resolution textures by splitting them into tiles. Therefore, it is possible to create lightmaps on the textures at extremely high resolutions. But there is no real systematic way of doing this, besides however hellcat did it, which requires 3ds max. Now, JED actually supports texture resolutions up to 1024x1024 and maybe higher. One could complete an entire level, with high-res textures, and omit lighting. Now here comes the cool part:

1. Flag every surface as fully lit.
2. Load this theoretical program. It is 100% non-functional right now. However, there is no reason why it wouldn’t work if someone had the time and knowledge to program it. I did the Windows form in Visual Basic.NET, but I don’t know enough to finish it. I do know exactly how it would work though.
Theoretical Program
[http://members.lycos.co.uk/mystic0/light.jpg]

First the user would load the .jkl into the program and specify an output directory. Here is an explanation of the other functions:
“Pixels per lightmap pixel” Must be a perfect square or 1. (1, 2, 4, 9, 16, 25, ect…) If 1, the minimum, is selected, the generator would calculate the light intensity for each texel. The lower the number, the longer the generation would take, but would not affect performance in the game at all. Users would probably only set it higher if they had to test it our and didn’t want to wait forever.
“Split hi-res textures into tiles?” This handy function would split all textures over 256x256 into 256x256 tiles after the lightmap process is complete.
“Include things” This would tell the generator whether or not to include things, such as 3dos, in the lightmap calculation.
“Lights (things)” These things would be the lights used in the calculation. This option would not be included in the first version, as 3dos would be a more complex process, especially ones inside a GOB/GOO container.
“Exclude…” These features would prove to be useful in excluding things such as skyboxes, walkplayers, water, and other things that should be fully lit.

How it would work
--------------------------
1. User specifies input and output, sets options, and presses generate.
2. The generator would then enter a loop. If 1 pixel per lightmap pixel was selected, it would attempt to draw a line to each light specified from each texel. If 4, 16, 25, or higher, it would use a square and draw it from the middle. If there is no middle, it would use the texel to the top-left closest to the middle.
3. When the loop is completed, it would search each texture file for anything over 256x256. If it finds any, it splits them up, and change the jkl texture reference accordingly.
4. The entire level is dumped in the output directory, along with potentially hundreds of 256x256 tiles.

Known problems

The most obvious problem is that I don’t have any idea how to program this. I am not asking anybody to do it for me. I a question about editing BMP’s with a program. What I need to be able to do is edit each color value with the program… I remember seeing something like an RGB table in another format, like TGA or RAW, but I forget. Take a look at the contents of a 256x256 bmp file, which I opened with Visual Studio.NET’s binary editor:
[http://members.lycos.co.uk/mystic0/bmpfile.gif]

Feel free to comment, question, and answer on anything above. Thank you. [http://forums.massassi.net/html/smile.gif]


------------------
Mystic0's Editing resources
Levels:
Temple of Flames

The Massassi Post Count Summary
"I am the signature virus! Copy me into your signature so that I can take over the world! Moohahahee!"
2003-09-27, 11:02 AM #2
0.o

Well, you've put quite a bit of thought into it... it'd be nice to see if it'd work.

------------------
Current Maps

Look up my nose and see your future.
Current Maps | Newest Map
2003-09-27, 11:08 AM #3
I came to the same conclussion a while back. It's very time consuming to do it the way I've been doing because everything required to do it isn't all in one program.

A problem I think you'll run into are the textures. If you have the same object, using the same textures, but pointing in different directions, you would need to rename the textures for each object after you do your calculations. This, in it's self, isn't much of a problem and is certainly possible. The problem is that it's incredibly ineffecient, consuming lots of resources (due to the significant increase in different textures, and that's not factoring mip versions in for each texture). It would probably be great for just doing something like terrain.

But, I don't know, it's all just kind of theoritical right now. There's only one way to know if it'll work or not...

------------------
Try not, do; or do not.

[This message has been edited by Friend14 (edited September 27, 2003).]
Math is infinitely finite, while the universe is finitely infinite. PI = QED
2003-09-27, 11:12 AM #4
It's a good idea, but I'm not sure if it would work well, or work at all. And you'd have to somehow match up sector lighting so models can be lit properly.

I think rewriting CleaveLight would probably be a better choice.

------------------
Bassoon, n. A brazen instrument into which a fool blows out his brains.

[This message has been edited by Emon (edited September 27, 2003).]
Bassoon, n. A brazen instrument into which a fool blows out his brains.
2003-09-27, 11:25 AM #5
Friend14- I do realize the inefficence of this system. It would most likly be used for small, highly detailed, outdoor terrain levels.

Emon- If I understand what your talking about, I already have a solution for that. Simply stick a dynamic light cog for the ghost positions that were used as the light sources. This will light the player models in-game, and will not affect the actual level because it is fully lit. This may, however, slow the game down quite a bit.

I also thought of this:
Jedi Knight Pre-rendering
Make a level that is set up for a cut-scene. Put the camera at the starting position. Take a screenshot. Then, slightly change the level, like clay-animation, re-calculate the lighting, and repeat. This is totally far-fetched, but it could be used to have realistic volumetric lighting in a pre-rendered JK cutscene.

------------------
Mystic0's Editing resources
Levels:
Temple of Flames

The Massassi Post Count Summary
"I am the signature virus! Copy me into your signature so that I can take over the world! Moohahahee!"
2003-09-27, 11:27 AM #6
Another problem I might run into is getting the program to recognize the location of each texel... this might be a cumbersome process from a programing perspective.

------------------
Mystic0's Editing resources
Levels:
Temple of Flames

The Massassi Post Count Summary
"I am the signature virus! Copy me into your signature so that I can take over the world! Moohahahee!"
2003-09-27, 11:28 AM #7
But if the level is fully lit, the dynamic light won't do anything.

------------------
Bassoon, n. A brazen instrument into which a fool blows out his brains.
Bassoon, n. A brazen instrument into which a fool blows out his brains.
2003-09-27, 12:01 PM #8
I was talking about surface flags, not sector lighting. So it should light the models.
[edit]The 3dos that have the lightmap on them would have to be prelit so they are fully lit.[/edit]

[edit]The whole purpose of having dynamic lighting on top of a lightmap is to give the actors lighting, but if you ask me it isn't worth it.[/edit]
------------------
Mystic0's Editing resources
Levels:
Temple of Flames

The Massassi Post Count Summary
"I am the signature virus! Copy me into your signature so that I can take over the world! Moohahahee!"

[This message has been edited by Mystic0 (edited September 27, 2003).]

[This message has been edited by Mystic0 (edited September 27, 2003).]
2003-09-27, 12:18 PM #9
I would also like to add that breaking the first few barriers and getting a working program opens the doors to several other functions. For example, in a second version, we could make translusant surfaces cast colored reflections.

------------------
Mystic0's Editing resources
Levels:
Temple of Flames

The Massassi Post Count Summary
"I am the signature virus! Copy me into your signature so that I can take over the world! Moohahahee!"
2003-09-27, 12:49 PM #10
Hmm, I still don't think it's really worth it. I still say a better version of something like CleaveLight is a better solution. It would take a really long time and a lot of coding for this to make something that can compete with what you could do in a short amount of time with the CleaveLight concept.

------------------
Bassoon, n. A brazen instrument into which a fool blows out his brains.
Bassoon, n. A brazen instrument into which a fool blows out his brains.
2003-09-27, 12:54 PM #11
What exactly do you have in mind when you say 'better version' of clevelight?

------------------
Mystic0's Editing resources
Levels:
Temple of Flames

The Massassi Post Count Summary
"I am the signature virus! Copy me into your signature so that I can take over the world! Moohahahee!"
2003-09-27, 2:36 PM #12
Something that isn't god awfully slow, something that lets you pick what sectors you want to use it on (maybe CleaveLight does this, I can't remember), something that lets you pick how precise you want your shadows to be, something that works with multiple object shadows, if possible.

------------------
Bassoon, n. A brazen instrument into which a fool blows out his brains.
Bassoon, n. A brazen instrument into which a fool blows out his brains.
2003-09-27, 2:42 PM #13
Sounds plausible

------------------
Kilroy Was Here
2003-09-27, 3:21 PM #14
Quote:
<font face="Verdana, Arial" size="2">Originally posted by Overlord:
Sounds plausible

</font>


Were you talking about lightmaps or a better clevelight?

------------------
Mystic0's Editing resources
Levels:
Temple of Flames

The Massassi Post Count Summary
"I am the signature virus! Copy me into your signature so that I can take over the world! Moohahahee!"
2003-09-27, 6:25 PM #15
You might want to consider writing the program in baby steps. You know, get one fuction working (a basic one) and then kinda just build it from there. Say, start with the "texture splitting" (splitting, say, a 1280x1280 texture into 25 256x256 textures), then work up to the light calculations and such. The reason I say this, is because the "texture splitting" feature by itself would be a useful tool (plus it gives you something to work from).

------------------
Try not, do; or do not.

[This message has been edited by Friend14 (edited September 27, 2003).]
Math is infinitely finite, while the universe is finitely infinite. PI = QED
2003-09-27, 7:37 PM #16
Your're right. I also considered doing a test with just pure numbers first, like with RGB values, before actually trying to load a BMP. This will be an educational process for me as well.

------------------
Mystic0's Editing resources
Levels:
Temple of Flames

The Massassi Post Count Summary
"I am the signature virus! Copy me into your signature so that I can take over the world! Moohahahee!"
2003-09-27, 7:48 PM #17
You realize if this is VB, it's going to be indescribably slow?

------------------
Bassoon, n. A brazen instrument into which a fool blows out his brains.

[This message has been edited by Emon (edited September 27, 2003).]
Bassoon, n. A brazen instrument into which a fool blows out his brains.
2003-09-27, 8:06 PM #18
Sounds like a fantastic idea. I don't know near enough about programming or the JK engine to give any thoughts on it, but it sounds like it'd work.

------------------
My Deviations

"When all else fails, eat pie."
2003-09-28, 5:14 AM #19
Quite frankly, I don't have the time to learn C++ right now. Maybe later someone can port it.

------------------
Mystic0's Editing resources
Levels:
Temple of Flames

The Massassi Post Count Summary
"I am the signature virus! Copy me into your signature so that I can take over the world! Moohahahee!"
2003-09-30, 7:11 AM #20
I'm sorry but I would never look that deeply into a video game like that.

------------------
Quote:
<font face="Verdana, Arial" size="2">Gideon:
Tell me, how will this brave new world enhance my ability to play solitaire and read porn e-mail?</font>
"For the love of carnage and discord, I swear that on this night, you shall dine in hell!!"
2003-09-30, 10:02 AM #21
Quote:
<font face="Verdana, Arial" size="2">Originally posted by Ganondorf:
I'm sorry but I would never look that deeply into a video game like that.

</font>


Then your not part of his target audience [http://forums.massassi.net/html/biggrin.gif]

------------------
"The future is not determined by a throw of the dice, but is determined by the conscious decisions of you and me."
I am addicted to ellipses!!! AHHH!!! ...
2003-10-02, 7:41 AM #22
Well I mean the thought of lightmaps in JK would be cool but the JK engine will **** it up so badly there will be no hope of anything being released this... it would just be too crapy.

------------------
Quote:
<font face="Verdana, Arial" size="2">Gideon:
Tell me, how will this brave new world enhance my ability to play solitaire and read porn e-mail?</font>
"For the love of carnage and discord, I swear that on this night, you shall dine in hell!!"
2003-10-02, 12:21 PM #23
Teh JK engine Pwns!!! [http://forums.massassi.net/html/tongue.gif] [http://forums.massassi.net/html/wink.gif]

I know what you mean. Just look at what people have done in the past though, such as Hellcat's terrain level for team battle, and I think you will be convinced that the JK engine does not "****" it up.... [http://forums.massassi.net/html/biggrin.gif]

Definatly true, it won't look anything like quake III, but it will be one step closer.

------------------
Mystic0's Editing resources
Levels:
Temple of Flames

The Massassi Post Count Summary
"I am the signature virus! Copy me into your signature so that I can take over the world! Moohahahee!"
2003-10-04, 6:38 AM #24
You need the BMP file format? Here ya go...

I forget where I got this from, oh well *shifteyes*

Most of the stuff about < 24bit images or compression you prolly don't need, but Iwill include it so it wil be complete...

But I would think VB would have built in routines to load BMPs... oh well:

Code:
Header
0 - 1   2 "BM"
2 - 5   4 File size
6 - 9   4 Padding
A - D   4 File offset to Raster Data (H36)

Info Header
E - 11  4 Size of Info Header (norm=D40)
12 - 15 4 Bitmap Width
16 - 19 4 Bitmap Height
1A - 1B 2 Number of planes (def=1)
1C - 1D 2 Number of bits per pixel
1E - 21 4 Compression (0=none) (1=8bit) (2=4bit)
22 - 25 4 (compressed) Size of Image/Raster Data (may be set to 0 if compression 0)
26 - 29 4 Horizonal Resolution (pixels/meter)
2A - 2D 4 Vertical Resolution (pixels/meter)
2E - 31 4 Number of important colors (0=all)
32 - 35 4 Colors important

Color Table (present only in 8bit, 4bit, 1bit)
1 Red Value
1 Green Value
1 Blue Value
1 Padding

Raster Data (pixel data)
Pixels are stored bottom-up, left-to-right.
Pixel lines are padded with zeros to end on a 32bit (4byte) boundary.
For uncompressed formats every line will have the same number of bytes.
Color indices are zero based, meaning a pixel color of 0 represents
the first color table entry, a pixel color of 255 (if there are that
many) represents the 256th entry. For images with more than 256 colors
there is no color table. 

Raster Data encoding for 1bit / black & white images
BitCount = 1 Compression = 0  
Every byte holds 8 pixels, its highest order bit representing the
leftmost pixel of those. There are 2 color table entries. Some readers
will ignore them though, and assume that 0 is black and 1 is white. If
you are storing black and white pictures you should stick to this,
with any other 2 colors this is not an issue. Remember padding with
zeros up to a 32bit boundary (This can be up to 31 zeros/pixels!)  

Raster Data encoding for 4bit / 16 color images
BitCount = 4 Compression = 0  
Every byte holds 2 pixels, its high order 4 bits representing the left
of those. There are 16 color table entries. These colors do not have to
be the 16 MS-Windows standard colors. Padding each line with zeros up
to a 32bit boundary will result in up to 28 zeros = 7 'wasted pixels'.

Raster Data encoding for 8bit / 256 color images
BitCount = 8 Compression = 0  
Every byte holds 1 pixel. There are 256 color table entries. Padding
each line with zeros up to a 32bit boundary will result in up to 3
bytes of zeros = 3 'wasted pixels'.

Raster Data encoding for 16bit / hicolor images
BitCount = 16 Compression = 0  
Every 2bytes / 16bit holds 1 pixel.   
<information missing: the 16 bit was introduced together with Video
For Windows? Is it a memory-only-format?>  
The pixels are no color table pointers. There are no color table
entries. Padding each line with zeros up to a 16bit boundary will
result in up to 2 zero bytes.

Raster Data encoding for 24bit / truecolor images
BitCount = 24 Compression = 0  
[Edited by The Mega-ZZTer, because this part was WRONG]
For each pixel, the color is written in BGR order... yeah, in reverse
(I hate Microsoft, it's all their fault :P).  There is no padding until
the end of a row, then it appears to pad to the nearest 4 bytes... I
dunno for sure tho, but sometimes there is a padding of 0, 1, 2, or 3
that I've seen, so I assume it's to the nearest four... I suggest you
experiment.

Raster Data compression for 4bit / 16 color images
BitCount = 4 Compression = 2  
The pixel data is stored in 2bytes / 16bit chunks.  The first of these
specifies the number of consecutive pixels with the same pair of color
The second byte defines two color indices. The resulting pixel pattern
will be interleaved high-order 4bits and low order 4 bits (ABABA...).
If the first byte is zero, the second defines an escape code. The
End-of-Bitmap is zero padded to end on a 32bit boundary. Due to the
16bit-ness of this structure this will always be either two zero bytes
or none. 

n        c          Description
(byte 1) (Byte 2) 
  >0       any      n pixels are to be drawn. The 1st, 3rd, 5th, ...
                    pixels' color is in c's high-order 4 bits, the
                    even pixels' color is in c's low-order 4 bits.
                    If both color indices are the same, it results
                    in just n pixels of color c 
   0       0        End-of-line 
   0       1        End-of-Bitmap 
   0       2        Delta. The following 2 bytes define an unsigned
                    offset in x and y direction (y being up) The
                    skipped pixels should get a color zero. 
   0       >=3      The following c bytes will be read as single pixel
                    colors just as in uncompressed files. up to 12
                    bits of zeros follow, to put the file/memory
                    pointer on a 16bit boundary again. 

Example for 4bit RLE Compressed Data Expanded data 
03 04               0 4 0 
05 06               0 6 0 6 0 
00 06 45 56 67 00   4 5 5 6 6 7 
04 78               7 8 7 8 
000 02 05 01        Move 5 right and 1 up. (Windows docs say down,
                    which is wrong) 
00 00               End-of-line 
09 1E               1 E 1 E 1 E 1 E 1 
00 01               EndofBitmap 
00 00               Zero padding for 32bit boundary 

Raster Data compression for 8bit / 256 color images
BitCount = 8 Compression = 1  
The pixel data is stored in 2bytes / 16bit chunks.  The first of these
specifies the number of consecutive pixels with the same color. The
second byte defines their color index. If the first byte is zero, the
second defines an escape code. The End-of-Bitmap is zero padded to end
on a 32bit boundary. Due to the 16bit-ness of this structure this will
always be either two zero bytes or none.   
 
n        c        Description 
(Byte 1) (Byte 2)
  >0       any    n pixels of color number c 
  0        0      End-of-line 
  0        1      EndOfBitmap 
  0        2      Delta. The following 2 bytes define an unsigned
                  offset in x and y direction (y being up) The skipped4
                  pixels should get a color zero. 
  0        >=3    The following c bytes will be read as single pixel
                  colors just as in uncompressed files. A zero follows,
                  if c is odd, putting the file/memory pointer on a
                  16bit boundary again. 

Example for 8bit RLE Compressed Data Expanded data 
03 04              04 04 04 
05 06              06 06 06 06 06 
00 03 45 56 67 00  45 56 67 
02 78              78 78 
00 02 05 01        Move 5 right and 1 up. (Windows docs say down,
                   which is wrong) 
00 00              End-of-line 
09 1E              1E 1E 1E 1E 1E 1E 1E 1E 1E 
00 01              End-of-bitmap 
00 00              Zero padding for 32bit boundary


Hope this helps.

------------------
The Mega-ZZTer's Gaming Haven! - Under Construction
NEW! PHP implementation underway!
Website is working again. (Somewhat.)

2003-10-04, 12:07 PM #25
[http://forums.massassi.net/html/eek.gif] Wow. Thank you. [http://forums.massassi.net/html/cool.gif]

You have no idea how much this will help.... [http://forums.massassi.net/html/biggrin.gif] (Well maybe you do [http://forums.massassi.net/html/tongue.gif])

------------------
Mystic0's Editing resources
Levels:
Temple of Flames

The Massassi Post Count Summary
"I am the signature virus! Copy me into your signature so that I can take over the world! Moohahahee!"
2003-10-04, 12:09 PM #26
Quote:
<font face="Verdana, Arial" size="2">Originally posted by Mystic0:
Quite frankly, I don't have the time to learn C++ right now. Maybe later someone can port it.

</font>


I'm learning C++ at school right now, but probably wont know enough to help.

------------------
"The quality of the levels you make is determined by the skill of the person not by the editor in which they use!"
-Michael Kyle
2003-10-04, 12:15 PM #27
The most important thing to do here is figure out how it would work, not how to code it. Right now, my biggest barrier (Now that I have the BMP format, lol) is to design a function that draws the line from the light to the texel and detects if it is obstruced. Everything else is fairly simple.

------------------
Mystic0's Editing resources
Levels:
Temple of Flames

The Massassi Post Count Summary
"I am the signature virus! Copy me into your signature so that I can take over the world! Moohahahee!"
2003-10-05, 6:20 PM #28
Or you could just map for JA...

------------------
I am Vinny.
2003-10-06, 3:25 AM #29
Stop spoiling the fun, Vinny.
2003-10-06, 3:30 AM #30
Quote:
<font face="Verdana, Arial" size="2">Originally posted by Vincent Valentine:
Or you could just map for JA...

</font>


lol that best comment of the thread.

------------------
Quote:
<font face="Verdana, Arial" size="2">Gideon:
Tell me, how will this brave new world enhance my ability to play solitaire and read porn e-mail?</font>
"For the love of carnage and discord, I swear that on this night, you shall dine in hell!!"
2003-10-06, 5:44 AM #31
Quote:
<font face="Verdana, Arial" size="2">Originally posted by Vincent Valentine:
Or you could just map for JA...
</font>


This is what I was thinking but he said it first. How much more can you all tweak, tinker, and toil (alliteration...oooh yeah) with a 6 year old engine?

------------------
<scribbly handwriting barely resembling name>
Code to the left of him, code to the right of him, code in front of him compil'd and thundered. Programm'd at with shot and $SHELL. Boldly he typed and well. Into the jaws of C. Into the mouth of PERL. Debug'd the 0x258.
2003-10-06, 6:37 AM #32
Quote:
<font face="Verdana, Arial" size="2">Originally posted by Gandalf1120:
This is what I was thinking but he said it first. How much more can you all tweak, tinker, and toil (alliteration...oooh yeah) with a 6 year old engine?

</font>

I believe, that is the whole point. Anyway it sounds possible and I would program it if I knew how, but I doubt anyone will since it would be a difficult task.
2003-10-06, 6:54 AM #33
This would be awesome if it worked... but how are you gonna handle the texture splitting? it might work ok with the textures, but spitting the surfaces might be hard... and then it might be used by a COG, which makes things icky.

------------------
The Mega-ZZTer's Gaming Haven! - Under Construction
NEW! PHP implementation underway!

[This message has been edited by Gebohq (edited December 28, 2003).]

2003-10-06, 7:23 AM #34
This sounds like a really cool project.

I'm curious though, with all that work going in to making new maps for an old engine - why hasn't someone made a new engine that is compatible with your maps?

------------------
ye are of nothing, and your work of nought: an abomination is he that chooseth you
www.wudan07.com
2003-10-06, 7:38 AM #35
I believe that's being worked on by Jon`C...

------------------
Quote:
<font face="Verdana, Arial" size="2">Originally posted by Thrawn42689:
GothicX is the best n00b ever.
</font>
2003-10-06, 9:39 AM #36
what does the ELUA say about writing a new 3d engine that is compatible with JK levels? Isn't that considered reverse enginerring?

As far as the texture splitting goes, all COGing should be done afterward.

I can talk later, I'm going to math now, lol....

------------------
Mystic0's Editing resources
Levels:
Temple of Flames

The Massassi Post Count Summary
"I am the signature virus! Copy me into your signature so that I can take over the world! Moohahahee!"
2003-10-06, 12:49 PM #37
There are... well... a lot of problems with this idea, and I mean a lot. You could probably do it for a very (VERY!!) small area with very simple architecture.

The math isn't nearly as complex as it sounds. For basic lighting, you need to cast a ray from each texel that you're concerned with to the light source, testing for intersections with relevant surfaces.
JK's use of sectors gives you a nice option for this collision check: a ray cast from any point on a surface of the sector can only possibly intersect with surfaces of the sector. If the ray intersects an adjoin it's continued into the adjoined sector; if it intersects a non-adjoin/draw textured surface, the ray is discarded. You can implement radiosity in a similar way. Sector engines are actually quite nice for this sort of thing.

One suggestion that I have is to do all of this straight from the MAT files. The format is fairly well documented in the JK specs. Hope you can figure it out.

------------------
2003-10-06, 2:00 PM #38
Thank you for not posting "go edit JA" and actually giving some advice Jon`C. I have no idea how well this will work with large areas, or how fast video memory for the textures will run out.

I looked into radiosity, but I don't really seem to understand how exactly it's implemented.

I actually don't think it is a good idea to use MAT's, mainly because of mip-maps. A MAT file is 87.5% bigger with 4 LOD, and this would slow down the calculation process.

I'll take a closer look at the JK specs and look for some answers... thanks for your help. [http://forums.massassi.net/html/smile.gif]

edit: typo
------------------
Mystic0's Editing resources
Levels:
Temple of Flames

The Massassi Post Count Summary
"I am the signature virus! Copy me into your signature so that I can take over the world! Moohahahee!"

[This message has been edited by Mystic0 (edited October 06, 2003).]
2003-10-06, 5:06 PM #39
I've never posted "Go edit JA" in my life. Except that one time, but this is that one time, and it's a quote so it doesn't count, and blarg.

------------------
2003-10-06, 5:14 PM #40
Hehe... are you really trying to write a new 3d engine that can read JK levels like gothicX says you are? And more importantly, is that legal (Not that I care...)?

------------------
Mystic0's Editing resources
Levels:
Temple of Flames

The Massassi Post Count Summary
"I am the signature virus! Copy me into your signature so that I can take over the world! Moohahahee!"
12

↑ Up to the top!