[10:44pm] Lilman424 sets mode: +m [10:44pm] anyone care to start? [10:44pm] Ok. So who has anything to add? [10:46pm] nice ice breaker [10:46pm] ok, so, what’s the meeting main topic? [10:47pm] Um...The engine? [10:48pm] and.....about releasing the source code and such [10:48pm] Generally: I’ve just finished object managing (low level) stuff [10:48pm] HEX wants to know: [10:48pm] [03:47:49] Question this: How much objects can the engine handle? [10:49pm] That will depend: [10:49pm] enhanced existing classes and merged them into dynamic pools instead of those stupid arrays [10:49pm] there won't be a hard limit of objects [10:49pm] but there will be on how fast those can all be rendered. [10:49pm] they're allocated dynamically [10:49pm] yes... [10:49pm] So basically, it’s however much any given PC can handle before crashing? [10:50pm] that’s right [10:50pm] but in order to prevent crashing there'll probably a 'soft limit' [10:50pm] crashing? We're writing quality software here. It won't crash given any load (at least, if there's going to be a Linux port, it will) [10:50pm] (* declared in .ini file due to RAM capacity) [10:51pm] hehe [10:51pm] that sounds good [10:51pm] But in order to keep some form of performance, the game shouldn't use more memory than the machine has. [10:51pm] swap = evil [10:51pm] yes, swap files are slow [10:51pm] yea Hellfire, just wait for 128 companies, with 256 players in each where each controls 65535 objects :D [10:52pm] Q: In witch is the engine extendable. I mean; is it easy to add new pieces to the code. Like if I want to add something. Should I know the entire source or can the "new" code easily be included? [10:52pm] Rein: Can you find a sponsor for a server that can handle that much load? [10:52pm] it hardly depends on what kind of addition you're about to make [10:52pm] I'm sure as we progress, and if everything goes as planned, we can leech that 1gbit server :-) [10:52pm] Hellfire: no [10:53pm] I don’t take care of net stuff, even server-client architecture will be hardly consulted with other coders [10:53pm] I'd propose rather a multi-server system [10:53pm] That will be necessary, yes. [10:54pm] ow, Hellfire, I'd love to ask you to fill up the MESHes code (loading/rendering/handling 3d data and so) [10:54pm] ok. [10:54pm] as soon as the source is given to you [10:54pm] :) I was just going to ask [10:55pm] some docs are necessary [10:55pm] general engine's structure has changed a lot since that old good src0004 version ;) [10:55pm] probably, yes. And maybe an optimized custom mesh file format. But I'll look into that when I'm coding. [10:56pm] You gave me the src0005 version as well. [10:56pm] yea, there are just null structures and functions waiting to filling [10:56pm] 0005? ow, that was a first step in a way of improving the struct [10:57pm] Great! Can't wait to start coding! ooh. wait.. design and specs come first :( [10:57pm] I know some C++ and can probably help with simpler tasks if you need it [10:57pm] bug-tracking ;D [10:57pm] ::bows head:: damn :-) [10:57pm] just kidding ;) [10:58pm] I wonder whether we could give Ken or Evan an algorithm design.. And let them implement it... [10:58pm] What's the situation with the Design Docs? [10:58pm] algorithm design? [10:58pm] STATUS: there aren't any apart from engine's classes’ docs [10:59pm] general architecture needs to be enclosed in a graph [10:59pm] Rein: have you looked into pathfinding and/or (rail)road data representation? [11:00pm] yes, but not in order to implement it yet [11:00pm] modified A* is a solution [11:00pm] which doesn't take whole map into account but only road/rail connection [11:01pm] I was puzzling on rail signs blocks...and handling them [11:01pm] Yes, that can be a real hard one. [11:02pm] and what I made up is a system of dynamic std::vectors which keep single tracks between signs [11:02pm] I was thinking that each block should have a list of entries and a list of exist (which can overlap), and for each entry, one train could be waiting. [11:03pm] something like this [11:03pm] only handling them in memory may be bloody for memory [11:04pm] Do they take so much memory? [11:04pm] Hellfire: texture handling, instead of using one general texture pool I decided to make textures lists in every class where it's necessary [11:05pm] Any reason? Or is the latter faster? [11:05pm] every block has to keep pointers to all the other blocks placed directly [11:05pm] TEX: we don't have to use pointers to every texture (from GUI, TERRAIN RENDERER, OBJECT RENERER etc.) [11:06pm] every class will has its own unique textures [11:08pm] [04:07:56] Q: Do you already have an idea on which systems it's gonna work? Like what are the min. system specs you need? [11:08pm] [04:08:03] Q: Which compilers are Rein and Hellfire using? [11:08pm] Visual C++ [11:09pm] ooh, that’s what I use [11:09pm] [04:08:03] Q: The zoom levels, how much do they FPS do they eat? I know this was on the forums before, but I want to know if you already improved this somehow. It wouldn't work nice if you lose too much FPS when zooming in. [11:09pm] (Q1): no idea, I’m sure it won’t run well on my pIII666 ;) [11:09pm] that's what I use too, but it won't work. :( [11:09pm] (Q2) MSVC++6.0 (me) [11:09pm] I have 6.0, got it for like $35 [11:09pm] so we all use MSVC++ [11:10pm] (Q1): I think that it will run on today's new budget hardware (which will be mainstream by the time the game comes available) [11:10pm] (Q3) at normal zoom I reach 30 fps but when zooming out it drops down below 1.0 :/ [11:10pm] I got it in a learning book; SAMS teach yourself C in 21 days [11:10pm] we have to implement good LOD algorithms both for objects and terrain to keep fps at reasonable stage [11:10pm] (Q3) at normal zoom, I reach over 400 fps. But when zooming out it drops down to 5.0 (unoptimized code) [11:11pm] forgot to mention: I have a way too heavy gaming rig. :) [11:11pm] but, remember, there's no objects yet [11:11pm] That's true. Ideally, objects will have some form of LOD too. [11:12pm] uh, have you noticed Hellfire that the framing of the drawn tiles is hardcoded and unjustifiable (ab. 40 tiles in a row and col ;) [11:12pm] yes, I have noticed that it's hardcoded. (it isn't present in src0005) [11:13pm] or am I off your point here? [11:13pm] I cant recall it now [11:14pm] there are variables iTilesOnScreenX and Y (or sth like that) which ought to be dynamically updated while zooming) [11:15pm] but they already are :S [11:15pm] the values are a bit off, but they are dynamic. End of On-topic discussion