Fishman -> RE: Issues with PRIVATE ships (4/16/2010 1:39:13 AM)
|
quote:
ORIGINAL: ceyan SEV ships do have automation, but its only tracked ONCE per turn. At the start (or end, however it works in SEV) and when you automated one of your own ships, it does the calculations and makes the decision. Then, presumably, once per turn it will also check the mission conditions and validity. How often do you do a turn? I'm assuming Distant Worlds doesn't recalculate every single second, but it sure as hell does it far faster than I can do a single turn in SEV. CPU cost, not RAM cost. This recalculation isn't using more RAM no matter how much it happens unless something leaks. quote:
ORIGINAL: ceyan I felt another example was needed, so I quoted this one. So "empty space" doesn't have to be tracked to see if a ship is able to detect whats inside it? I must be playing a different game, because in my version of Distant Worlds I can't see jack squat if I haven't explored it and also have a ship in range to detect whats there. No. "Empty space" isn't even a memory object. Empty space is the absence of a memory object. Objects see other objects in object-to-object interactions, empty space sees nothing, and objects do not see empty space. Painting visibility circles on empty space is a matter of iterating through all the available objects and painting their visibility circles. In fact, it is quite clear this is what happens, because the circles are painted over each other, resulting in very opaque areas where lots of circles overlap. quote:
ORIGINAL: Malevolence I'm sorry if anything I added to the thread started a debate about the game's design architecture. My comments were meant in the general sense, not specific. I simply meant that any calculations you add to game's routine is going to create more work for the processor(s). That could be a simple square root calculation to find distance, but then executed 3,000 times as every object checks every other object in an area for collisions. Ugh, no, doing a distance check, you skip the squarerooting and just use distance-squared. Square-root calculation is slow, simple multiplication is dirt cheap. Attempting to executing a million square roots a second is going to sink your computer. Doing a million simple integer arithmetic tests costs practically nothing, and you can cut it down further by culling collision sets that were absolutely not going to happen.
|
|
|
|