#pentagram@irc.freenode.net logs for 28 May 2017 (GMT)

Archive Today Yesterday Tomorrow
Pentagram homepage


[01:43:16] <-- Dominus has left IRC (Ping timeout: 260 seconds)
[01:43:40] --> Dominus has joined #pentagram
[01:43:40] --- ChanServ gives channel operator status to Dominus
[02:04:39] <-- nutron has left IRC (Read error: Connection reset by peer)
[02:05:16] --> nutron has joined #pentagram
[02:17:23] --> nutron|w has joined #pentagram
[02:20:26] <-- nutron has left IRC (Ping timeout: 240 seconds)
[05:21:52] <-- Lightkey has left IRC (Ping timeout: 258 seconds)
[05:35:11] --> Lightkey has joined #pentagram
[10:32:20] <megaTherion> hi
[13:42:02] <megaTherion> wjp: did bother myself with rendering an crusader map yesterday, rendering in its simpliest forms - just draw all the fixed entries... I understand that, to get the complete thing I've also draw entries from the glob.flx
[13:44:32] <megaTherion> Is Map.cpp the right thing to consider if I want to know more about how its done? I've read in the docs about maps, some things dont seem to be conform with the implementation - especially the thing regarding mapping to screen coordinates.
[13:45:26] <megaTherion> At least I didnt see it in the Map.cpp - might be hidden somewhere, there was only a single if regarding crusader about (x,y) *= 2
[13:48:45] <wjp> Map.cpp, MapGlob.cpp, GlobEgg.cpp are probably useful to look at
[13:49:44] <wjp> globs are a form of re-usable tiles filled with fixed objects
[13:50:20] <wjp> I don't know how extensively Crusader uses them, but U8's world has many
[13:51:59] <wjp> what in the mapping to screen coordinates is strange?
[14:01:06] <megaTherion> wjp: well in docs/u8mapfmt.txt its noted: "To convert the map XYZ coordinates to screen XY coordinates, use these formulas: ..." later we have the same paragraph again for GLOB.FLX.
[14:01:34] <megaTherion> Below that there is "If you're adding it into the map..." <- dont understand that, so this only refers to GLOB.FLX? It is the entry in GLOB.FLX here?
[14:02:26] <megaTherion> I couldnt find these formula applied in Map.cpp so far
[14:04:03] <wjp> Map.cpp doesn't do rendering
[14:04:13] <wjp> that's gumps/GameMapGump.cpp
[14:04:43] <wjp> the rest will typically only care about 3d world coordinates
[14:05:06] <megaTherion> Oh ok, I thought *Gump* is to be discarded because *Gump* is the name referring to the Pentagram's own invented menu/widget structure
[14:06:03] <wjp> the name is also what u7, u8 somehow use for widgets (e.g., u8gumps.flx has graphics for those)
[14:06:27] <wjp> we use it probably slightly more generally, including the window that displays map content
[14:07:01] <megaTherion> I see
[14:07:14] <wjp> but other than GameMapGump most probably aren't interesting for you, no
[14:08:30] <megaTherion> well atm Im having this: http://imgur.com/a/i9Q3D
[14:08:52] <megaTherion> I understand that it cannot be a complete map as the floors are lacking and probably Z objects are mixed also some things shouldnt be rendered as they were for development purposes only
[14:09:13] <megaTherion> Im basically using the formula proposed in the docs: qreal sX = (entry.coords.x - entry.coords.y) / 2;
[14:09:13] <megaTherion> qreal sY = (entry.coords.x + entry.coords.y) / 4 - entry.coords.z;
[14:09:26] <megaTherion> originally it was / 4 and / 8 but / 2 and / 4 looks kinda more sane to me...
[14:09:40] <megaTherion> entry is the single entry in the Fixed.dat
[14:09:45] <wjp> crusader is higher res, so could be
[14:09:59] <wjp> wouldn't surprise me if the gaps in there are mostly globs
[14:10:21] <wjp> the editor-item thing is a typeflag in U8
[14:12:42] <megaTherion> ok well I guess I'll reading GameMapGump then, didnt do that yet
[14:15:22] <wjp> main thing in there is probably render order
[14:15:44] <wjp> i.e., what goes in front of what
[14:16:22] <wjp> oh wait, that's mainly in world/ItemSorter.cpp
[14:17:58] <megaTherion> interesting, I see so the order of rendering matters (of course?) :D
[14:18:06] <megaTherion> where would I find that information?
[14:18:54] <wjp> this was a lot of trial and error on our part
[14:20:23] <wjp> ItemSorter.cpp has quite a few comments, but I don't think we wrote it down in a text file
[14:21:20] <megaTherion> oh ok, Im gonna check that out
[14:22:05] <megaTherion> I guess the most ugly things are, (if) there are hardcoded things in the executable - but back then I think it was quite common to do such mistakes
[14:22:41] <wjp> non-hardcoded rendering is a pretty rare thing though :-)
[14:24:12] <megaTherion> even today?
[14:24:49] <wjp> probably even more so today, with all these fancy 3d engines
[14:25:13] <megaTherion> well ok I can understand that its not possible to have *every* implication an rendering engine mades in some resource file
[14:25:28] <megaTherion> but I noticed a lot of ugly hacks regarding U8 for lacking tiles and stuff
[22:02:51] <-- Dark-Star has left IRC (Ping timeout: 246 seconds)
[22:04:59] --> Dark-Star has joined #pentagram