#exult@irc.freenode.net logs for 23 Apr 2009 (GMT)

Archive Today Yesterday Tomorrow
Exult homepage


[00:00:38] <Marzo> Considering how little I know of graphics code, this change in terminology doesn't add up to any meaningful difference in understanding :-)
[00:00:40] <Colourless> set textures to LUM8 mode, and have a fragment shader with a dependent read into a RGBA8 texture based on the index from the shape texture
[00:04:23] <pupnik> great idea
[00:04:59] <pupnik> clut!
[00:05:01] <Marzo> Hm. Need to study some OpenGL, because I can't figure out what it means :-(
[00:06:13] <Colourless> going the palette fragment shader corrently will be... interesting
[00:06:39] <pupnik> vga had 256 colors in a Color Look Up Table
[00:07:04] <pupnik> a pixel shader can emulate the clut
[00:07:40] <pupnik> i have no cg shader experience yet
[00:09:09] <Malignant_Manor> Marzo, what file and line is the chunk cache?
[00:10:31] <Marzo> objs/chunkter.cc:242
[00:10:49] <Malignant_Manor> Thanks, I'll see how well it does.
[00:12:55] <Marzo> I'll do you one better: go to gamewin.cc:357 and change "pal" to "pal, rotation"
[00:14:05] <Marzo> Cut CPU usage by a factor of four here, and is an error of mine (I thought I had done this, but as it turns out, I didn't...)
[00:15:23] <Malignant_Manor> First didn't stop it from maxing. Second makes it work nicely.
[00:15:58] <Marzo> All this to support paette rotations...
[00:16:30] <Marzo> Hope that the shader Colourless/pupnik were discussing materializes...
[00:16:58] <Malignant_Manor> I want a radial source based lighting setup option.
[00:17:51] <Marzo> Wow
[00:17:55] <Malignant_Manor> Finally, OpenGL, operates nicely.
[00:18:14] <Marzo> The change is good enough that the game is almost playable with valgrind/callgrind on
[00:24:10] <Marzo> Well, the changes are in SVN
[00:25:43] <pupnik> congrats
[00:33:28] <Malignant_Manor> It is kind of sad that it has graphics comparable to point but requirements comparable to HQx2.
[00:45:19] --- Marzo is now known as Marzo_away
[00:56:45] --> Rottingbeef has joined #exult
[01:03:23] <-- Baastuul_ has left IRC (Read error: 60 (Operation timed out))
[04:44:28] --- Marzo_away is now known as Marzo
[05:09:26] <Marzo> Colourless: I did some looking reading, and want to see if I understood it correctly (you can answer in the IRC if I am out and I'll read the logs)
[05:09:52] <Marzo> LUM8 = 8-bit luminance; the texture in this mode will be used to store a per-pixel index
[05:11:02] <Marzo> The RGBA8 = 32-bit texture acts as a palette, and the pixel values from the LUM8 texture are used as an index into this texture
[05:12:14] <Marzo> The Exult side will output in the LUM8 format, and the fragment shader will perform the translation for the final rendering
[05:14:01] <Marzo> Is that what you meant?
[05:27:45] <-- Colourless has left IRC (Read error: 110 (Connection timed out))
[05:44:57] <-- Marzo has left IRC (Read error: 110 (Connection timed out))
[06:27:02] <-- Malignant_Manor has left IRC ("ChatZilla 0.9.84 [Firefox 3.0.8/2009032609]")
[06:27:58] * servus shouldn't have to point out that GL fragment programs target a rather small, higher-end portion of the target audience.
[07:03:51] --> pupnik_ has joined #exult
[07:04:37] <-- pupnik has left IRC (Read error: 60 (Operation timed out))
[07:12:18] <-- Rottingbeef has left IRC ("I, too, have lost a kingdom.")
[08:04:53] <-- RadoS has left IRC (kornbluth.freenode.net irc.freenode.net)
[08:05:05] --> RadoS has joined #exult
[10:03:26] --> shazza has joined #exult
[11:44:12] --> Colourless has joined #Exult
[11:59:10] <-- shazza has left IRC (Read error: 110 (Connection timed out))
[12:22:55] <-- Colourless has left IRC ("casts improved invisibility")
[13:38:59] --> ettin_ has joined #exult
[13:52:00] <-- ettin has left IRC (Read error: 110 (Connection timed out))
[14:31:13] --> Marzo has joined #exult
[14:35:22] <-- Kirben has left IRC (Read error: 110 (Connection timed out))
[14:41:18] --- Marzo is now known as Marzo_away
[15:06:31] --> ettin has joined #exult
[15:19:27] <-- ettin_ has left IRC (Read error: 110 (Connection timed out))
[15:32:43] --> Rottingbeef has joined #exult
[15:42:49] --> shazza has joined #exult
[15:46:42] --> shazza` has joined #exult
[15:46:50] <-- shazza` has left IRC (Remote closed the connection)
[16:04:42] <-- shazza has left IRC (Read error: 110 (Connection timed out))
[16:50:06] --> Fingolfin has joined #exult
[16:50:06] --- ChanServ gives channel operator status to Fingolfin
[17:24:34] --> Malignant_Manor has joined #exult
[17:32:59] <-- Fingolfin has left IRC ()
[18:00:06] --> Cahaan has joined #exult
[19:33:08] <-- Lord_Nightmare has left IRC (Read error: 110 (Connection timed out))
[19:33:28] --> Lord_Nightmare has joined #exult
[19:38:12] <-- Malignant_Manor has left IRC ("ChatZilla 0.9.84 [Firefox 3.0.9/2009040821]")
[21:11:12] <-- Rottingbeef has left IRC (Read error: 113 (No route to host))
[21:11:24] --> Rottingbeef has joined #exult
[22:03:10] --> Malignant_Manor has joined #exult
[22:34:14] --> Colourless has joined #Exult
[22:49:15] <Malignant_Manor> Marzo, how do I specify first_rot, last_rot in a called function? (234 and 254)
[22:49:17] <Malignant_Manor> GL_texshape(frame, GL_manager::get_instance()->palette, 234, 254,
[22:49:19] <Malignant_Manor> &Shape_manager::get_instance()->get_xform(0), 12);
[22:50:06] --- Marzo_away is now known as Marzo
[22:51:42] <Marzo> You use first_rot and last_rot from GL_manager, if I understood your question correctly
[22:52:28] <Marzo> But without looking at a sample of the code you mean, it is hard to know for sure if you will need to add getter functions or not
[22:53:11] * Marzo directs Colourless to a question in the logs
[22:54:47] <Colourless> [05:14:01] <Marzo> Is that what you meant?
[22:54:48] <Colourless> yes
[22:54:55] <Marzo> k
[22:55:00] <Marzo> Thanks
[22:55:59] <Malignant_Manor> Partial sections with two usages of it are at http://pastebin.com/m124e4a83
[23:00:51] <Marzo> I assume that these are from Exult3D?
[23:01:41] <Malignant_Manor> Yeah, so many changes. The rot wasn't there before.
[23:02:31] <Marzo> And it seems that in both cases you can access private data and functions
[23:03:13] <Marzo> Hance, it should be something like: http://pastebin.com/m411ca6a7
[23:03:53] <Marzo> (err... use "glman->get_xform" instead of "get_xform" in the first case)
[23:10:14] <Malignant_Manor> Don't use &Shape_manager::get_instance()->get_xform(0) ?
[23:10:54] <Marzo> I added a cache for Shape_manager::get_instance(), called glman
[23:14:59] <Malignant_Manor> getting errors, glman was not declared in this scope, expected primary-expression before ->
[23:15:20] <Marzo> You looked at the code I posted, didn't you?
[23:15:47] <Marzo> (line 11)
[23:16:34] <Malignant_Manor> yeah, pasted it.
[23:17:33] <Marzo> (the recommendation to use glman->get_xform was for the case in line 14, BTW)
[23:27:02] <Malignant_Manor> line 11 on link = line 314. I get primary at 314. glman not declared at 316.
[23:27:29] --> Kirben has joined #exult
[23:27:29] --- ChanServ gives channel operator status to Kirben
[23:28:45] <Marzo> Post the relevant code, please
[23:30:21] <Malignant_Manor> http://pastebin.com/d1e5192f9 line 1 = line 314
[23:30:36] <Malignant_Manor> Sorry for being so problematic.
[23:31:07] <Marzo> What is the exact error it gives?
[23:34:30] <Malignant_Manor> in member function void GL_shape::paint(int, int, Map_chunk*, bool)
[23:34:32] <Malignant_Manor> ./shapes/glshape.cc:314 error: expected primary-expression before '->' token
[23:34:34] <Malignant_Manor> ./shapes/glshape.cc:316 error 'glman' was not declared in this scope
[23:35:26] <Marzo> Erm... replace "GL_manager->instance" by "GL_manager::instance" and it should work
[23:36:16] <Marzo> Hey, several years later and now there have been updates to Munt!
[23:36:45] <Malignant_Manor> I thought it was discontinued.
[23:38:11] <Marzo> Well, starting a distribution upgrade in Ubuntu; will not be able to do any dev stuff for some time
[23:39:20] <Malignant_Manor> still /shapes/glshape.cc:316 error 'glman' was not declared in this scope
[23:39:22] <Marzo> (at least 4 hours if the download time estimate the installer gave is accurate)
[23:39:47] <Marzo> What is the exact error?
[23:40:50] <Malignant_Manor> ./shapes/glshape.cc: in member function void GL_shape::paint(int, int, Map_chunk*, bool)
[23:40:52] <Malignant_Manor> ./shapes/glshape.cc:316 error 'glman' was not declared in this scope
[23:41:08] <Marzo> Nothing before that?
[23:41:27] <Malignant_Manor> nope
[23:42:30] <Marzo> Post the entire function to pastebins, please
[23:43:47] <Malignant_Manor> http://pastebin.com/m4a580ee0
[23:44:24] <Marzo> Also: can you confirm that within the GL_manager definition in glshape.h there is the line "friend GL_shape;"?
[23:47:57] <Malignant_Manor> no friend GL_shape;
[23:50:11] <Malignant_Manor> There's friend class GL_texshape;
[23:50:43] <Marzo> Did you misquote the error above? It lists "GL_shape", but I can't find it in the code you posted
[23:52:18] <Malignant_Manor> sorry GL_texshape
[23:54:31] <Marzo> The code in question would be in lines 164-167 of the code in pastebins, right?
[23:54:50] <Malignant_Manor> yes
[23:55:15] <Marzo> Comment out line 160
[23:55:23] <Marzo> (from the pastebins code)
[23:55:49] <Marzo> And unindent line 164 by one level
[23:58:03] <Malignant_Manor> Yeah, stupid mistake. Now 'class GL_manager' has no member named 'get_xform'
[23:59:10] <Marzo> Ah, I see; replace line 167 by line 162 (without the ending */)
[23:59:24] <Marzo> I had thought it was GL_manager, but it is Shape_manager