#pentagram@irc.freenode.net logs for 22 Nov 2002 (GMT)

Archive Today Yesterday Tomorrow
Pentagram homepage

[00:04:50] <-- Dark-Star has left #pentagram ()
[04:56:44] --- Darke|zzZ is now known as Darke
[05:03:00] <-- Darke has left IRC ("Inficio-Infeci-Infectum")
[05:03:19] --> Darke has joined #pentagram
[05:03:19] --- ChanServ gives channel operator status to Darke
[05:33:53] <-- Darke has left IRC (saberhagen.freenode.net irc.freenode.net)
[05:44:27] --> Darke has joined #pentagram
[05:45:09] --- ChanServ gives channel operator status to Darke
[07:22:42] <-- Darke has left IRC (saberhagen.freenode.net irc.freenode.net)
[07:23:56] --> Darke has joined #pentagram
[13:34:28] --> Colourless has joined #Pentagram
[13:34:28] --- ChanServ gives channel operator status to Colourless
[14:43:30] <-- Kirben has left IRC (Read error: 104 (Connection reset by peer))
[15:10:38] <-- Colourless has left IRC ("brb")
[15:18:06] --> Colourless has joined #Pentagram
[15:18:06] --- ChanServ gives channel operator status to Colourless
[15:19:35] <Darke> Greetings once more, oh illustrious dragon. *bow*
[15:20:11] <Colourless> you may rise
[15:22:11] <Colourless> it's been rather quiet on irc today. the irc show nothing of interest at all
[15:22:20] <Colourless> s/irc show/irc logs show/
[15:22:40] * Darke nods. Nothing at all.
[15:24:19] * Darke is _still_ working on this annoying else problem. *grin*
[15:24:53] * Colourless is working on things somewhat unrevealed
[15:27:13] * Darke is not sure he'd ever be able to work like that. He has this minor tendancy to rabbit on about such things on irc, he's sure it'd slip out within 24 hours of him starting on an 'unrevealed' project. *grin*
[15:27:43] <Colourless> i'm sure i've mentioned something about it
[15:33:20] <Darke> More then likely. Knowing my state of coherency at the time I've been signing off at, you could have probably detailed it in great depth, and I would still not remember it. *Grin*
[15:36:21] <Colourless> here is some 'code' http://www.users.on.net/triforce/macrohell.png ... can you guess what it is :-)
[15:38:01] * Darke aiiiiiiees! and bounds behind the couch, curling up and whimpering. No! And I don't really want to know either!
[15:38:34] <Colourless> # :-)
[15:39:31] * Darke is _sure_ in that mess, there's a simple template class/function, begging to be released. *grin*
[15:40:27] <Colourless> so, that's possible, but macro's are just 'so' much faster, and that code is very very much speed critical
[15:42:29] <Colourless> a template class, would make things slightly slower. even using inlines would slow things down a bit
[15:42:36] <Colourless> i'll decode the first line:
[15:42:37] <Colourless> #define DEFINE_EDGE_ITERATOR(name) static sint32 d##name##, ##name##_l, d##name##dy_l, ##name##_r, d##name##dy_r, ##name##0, ##name##1, ##name##2, ##name##i;
[15:43:06] <Colourless> that defines a set of variables. substituting 'name' to something 'sane' you get
[15:44:27] <Colourless> static sint32 zx, z_l, dzdy_l, z_r, dzdy_r, z0, z1, z2, zi;
[15:44:59] * Darke nods.
[15:45:13] <Colourless> s/zx/dz/ :-)
[15:45:29] <Colourless> now, assume that d = delta, r = right, l = left
[15:46:29] <Colourless> that would give you zx, z_left, delta_z_delta_y_left, z_right, delta_z_delta_y, z0, z1, z2, zi
[15:47:01] <Colourless> now assume that x, y and z are coords in 3d space :-)
[15:47:08] * Darke guesses it's some 'map' rendering stuff. *grin*
[15:47:19] <Colourless> ye.... no :-)
[15:47:54] <Colourless> attempt to guess at the significance of z0, z1 and z2
[15:49:36] <Darke> Umm... 3d rendering stuff? *grin* I really can't think of what z[012] might be.
[15:50:00] <Colourless> what is your basic 3d primitive?
[15:50:35] <Darke> A triangle.
[15:51:18] <Colourless> yes
[15:51:26] <Colourless> what do you use to define a triangle in 3d space
[15:51:32] <Colourless> (or any space actually)
[15:52:15] <Darke> Presumably a origin and two vectors.
[15:52:35] <Colourless> no, you use 3 vertices
[15:52:47] * Darke ahhs.
[15:53:18] * Darke notes his knowlege of 3d rendering ends at 'a triangle' and begins again when you see it on the screen, if it wasn't completely obvious already. *grin*
[15:54:06] <Colourless> z0, z1, z2 would therefore be the 'z' values at the vertices of the triangle
[15:55:21] <Darke> Cool. *ponder*
[15:58:11] <Colourless> it's all pretty simple actually
[16:00:19] <Darke> So how to the delta's come into it? Why isn't the three points just specified with three 'offsets' in the 3d space, like (1, 1, 1)(-1, -1, -1)(0, 0, 1) or something? Or are the 'delta's just offset relative to the three z values?
[16:01:11] <Colourless> it uses 'scanline' rendering. what you do is start at the top line of the triangle and go down the screen, interpolating the values for the components at the edge of the triangle. you then go across the screen interpolating between the 2 end point (left and right side) getting your values for each pixel
[16:01:47] <Colourless> the 'deltas' are how much to increment the values for the left and right size values
[16:02:06] * Darke ahhs.
[16:02:10] <Colourless> z_left and z_right are the value for the left and right hand side
[16:03:03] <Colourless> incidently you need a set values to know the 'x' coord for the start and end of each line, but it's just the exact same thing.
[16:04:39] * Darke nods.
[16:04:54] <Colourless> it's a lot simpler than it would otherwise seem. it's just really messy to code :-)
[16:06:33] * Darke came to the conclusion years ago that pretty much everything was simpler when it wasn't expressed in code. *grin*
[16:14:09] --> Dark-Star has joined #pentagram
[16:20:12] <Colourless> and here is some current output example from the program: http://www.users.on.net/triforce/notbad.png as you can probably tell the output quality and the speed is 'all right' too
[16:21:49] * Darke oooohs. Neat!
[16:22:55] <Dark-Star> Looks cool... but I've never seen this NPC in U8 before... ;-)
[16:23:04] <Colourless> that is because it isn't u8 :-)
[16:23:47] <Dark-Star> I knew it, it was taken from U9, right?? ;-)
[16:24:07] <Colourless> um no :-)
[16:29:52] <Darke> It's actually from the Top Secret Lost Vale expansion pack that we got our hands on. *innocentlook*
[16:31:08] <Colourless> yeah it was a project being worked on by Origin and id software... i mean, Paul Steed, who 'made' the model as far as I know, was actually working at origin at that time :-)
[16:35:49] * Darke awaits many a dubious and doubtful look. *grin*
[16:36:47] <Dark-Star> So where can I download that Lost Vale expansion pack?? ;-)
[16:37:33] <Colourless> who said anything about download? we got it set on some unreliable 5.25 inch disk.
[16:37:47] <Colourless> too 'bad' they no longer work
[16:38:50] <Dark-Star> You sure they're PC disks and not C64 disks or something? :)
[16:39:11] --- Dark-Star is now known as Dark-Star|afk
[16:39:27] <Colourless> no, it was pc for sure
[16:46:44] <Colourless> lets see if i can make something a little more u8 related
[16:50:42] --- Dark-Star|afk is now known as Dark-Star
[17:36:03] <-- Dark-Star has left IRC ("Client Exiting")
[18:39:04] * Darke yawns and disappears into the realm of Z's. Night!
[18:39:20] --- Darke is now known as Darke|zzZ
[18:39:20] <Colourless> cya
[19:16:45] <Colourless> note to all: 2xSaI, SuperEagle, and Super2xSaI scaled 3d models look like shit.
[19:17:03] <Colourless> and on that note, time for me to leave
[19:17:04] <-- Colourless has left IRC ("casts invisibility")