Re: Software Architecture/Design

Richard Fabian <[email protected]>
Newsgroups gmane.games.devel.sweng
Message-ID <[email protected]>
I'd be scared that this would suffer the same problems as C++ virtual
populated code. Even though you think you're stream processing, you're not,
you're processing a stream of heterogeneous data, using different
instruction sets for each "keyword" you come across. If you replace your
keyword with the vtable pointer, you're basically going back to the old and
quite I cache unfriendly way of approaching this stuff.

In my opinioon, stream processing is not about processing streams with on
demand instruction mapping, it's about processing streams, with unified
functions, but producing control flow in other ways. The existence based
processing approach handles all your problems of virtual table style
polymorphism. You don't need to do a per element "what's my type, lookup the
code" process. If you do, you've broken a major point of putting your
components in their own containers.

On 3 June 2010 16:36, Megan Fox <[email protected]> wrote:

> ... to that end, what do the internals of your GameState, for
> instance, look like?  In my case it's an entity, but I'm still left
> with a lot of components/whatever that want to read, modify and store
> data on a stream in an extremely opaque fashion without ever caring
> what other data is on that stream, if the data member was already
> defined, etc.  That in turn leaves me with some kind of map that I'm
> indexing via strings, or via ASCII->int identifiers like
> {'P','o','s'}, or something similarly ugly that is either terrible for
> performance, or usability, or both.
>
> Does there exist a structure that deals with this?  Or is everyone
> just throwing their data into a hashmap, keeping their strings to a
> reasonable length, and balancing collisions vs wasted memory/resize
> costs/etc?
>
> (in my case I'd also want to load it down with some kind of stream
> merger, which in turn had some concept of priority, so that for
> instance physics stream writes to Pos override most other attempted
> changes of that value, etc, but that's likely immaterial and easy once
> I have a decent base structure)
>
> --
> Megan Fox
>
> --
fabs();
Just because the world is full of people that think just like you, doesn't
mean the other ones can't be right.

_______________________________________________
Sweng-Gamedev mailing list
[email protected]
http://lists.midnightryder.com/listinfo.cgi/sweng-gamedev-midnightryder.com
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.