Sign in to follow this  
  • entries
    72
  • comments
    104
  • views
    45384

The light at the tunnel's end, enhanced by bloom.

Sign in to follow this  
Staffan E

134 views

I've been able to get some work done this week and StarSmasha is progressing well. Current implemented features include:

x An easy to use 2D sprite engine with Sprite Caching and Distortion Maps (see below).

x Collision detection using a decent linear interframe technique on bounding circles. It simply calculates the closest distance between two parametric lines and determines collision from that. Nothing fancy.

x Timespace cascades. All timed objects in the game belong to a timespace which manages time for the objects. This makes it easy to group game objects by time dependance. If the game is paused, for example, this should not affect the GUI, thus the ingame objects and the GUI belong to different timespaces.

I'm using distortion maps in parallel with color textures in my sprite renderings to be able to create effects like shockwaves, heat ripples from engines, etc. The distortion maps themselves are (presently) simply color textures where the colors are interpreted as 2D vectors. The final scene is rendered to a texture, which is then rendered to the screen with it's texture coordinates offset by the distortion map vectors. The result is by-pixel distortion of the final scene with a low overhead.

I have recently migrated to C# and thus StarSmasha is my first devoted project to be written in this language, using MDX for hardware access. The reason for my migration is that I like C#'s simplicity and elegance. I find it much swifter to work with and the code is easier to oversee.

My primary goal right now is to put together a runable demo version of StarSmasha with all the rudimentary features. Then the real fun will begin as I can begin implementing the further features which I have ideas for. More to come.
Sign in to follow this  


5 Comments


Recommended Comments

I have been considering trying C# as well, my only worry is that it will lock me to microsoft, windows 98 or greater and .NET. Something that I dont mind in and on itself but seems alot to ask for in the competence of your userbase. How is it anyway, is the flexibility closer to languages like LISP than C++? <-- I dont know what I am talking about, I just have some vague idea of great symbolic power, good for any heavily mathematical program. Thanks!

Share this comment


Link to comment
Guest Anonymous Poster

Posted

My friend at university and I had the very same discussion a few days ago, whether C# would lock one up with MS products in the near future. The debate lasted for the most part of a day, intensified by the increasing rumours about Trusted Computing. I guess it all comes down to what will happen around C# in the coming years. There is the Mono project for example, and if more such initiatives can help remove some of the 'Microsoft-language' status from C# then I think it has potential to become very popular.

I'm not very well versed in other languages than C++, Java and Basic - which are all quite similar in their structure, so I cannot draw any striking parallels. My strongest impression of C# as I began to use it further was that it is very much like C++ turned inside out. The things that are hard (or at least tedious) to do in C++, like class declarations, declaration order, object removal, etc. are made easy in C# while on the other hand things like memory optimizations, direct memory access, etc. are made more difficult. I feel like C# is more restrictive in how you may type your code but on the other hand you don't have to type as much code to do the same things, and nine times out of ten this is a good thing which increases productivity.

Share this comment


Link to comment
Hmm..okay. I dont see why academics in the sciences insist on using OpenGL and linux. err...

"It is my firm belief that for every problem of mathematical nature, no matter how complex it may be, there exists at least one coordinate system which makes the problem, when represented in that system, trivial to solve." - You

I agree with that quote greatly. In fact, this my current area of long term research. You can see my journal for more. :D, and this from my What is Infinity thread. </end plug> :D

Share this comment


Link to comment
I read through the What is infinity thread and got struck by a few ideas while doing so. The concept of actual infinity has intrigued me for some time and although the quality of the posts in the thread varied a lot I found it interesting still. In my view the Cantorian approach to model actual infinity is problematic because in it we try to get into the realm of the infinite. I think there is a limit to what the human mind is capable of handling without preparation and that so far we are not ready to take this approach.

One way of treating actual infinity that I've though of is through levels of definition of numbers. I don't know if this even holds or if it already is covered in current theories. My though is that if numbers are either defined or undefined, could there be other levels of definition than those, and could numbers be ordered by their level of definition?

For example, consider the number y0 = 0/0 which can be rewritten as 0 = y0*0. This relation holds for any number y0, and y0 is thereby undefined i.e. has the lowest level of definition. On the other hand, consider the number y1 = 5. Here the number y1 is well defined - no ambiguity occurs so y1 has the highest level of definition.

One can think of other numbers which have levels of definition in between those, like the solution to the equation y22 = 1. y2 can be treated as having two simultaneous values { -1, 1 }, thus placing it in between y0 and y1 in the order of definition.

In this I think of infinites as numbers whose actual values have not been set yet. Thus they are potential candidates for any number and can be regarded as having all values simultaneously until they are made finite by picking a value. I would like to seperate this from sets in the way that inifinites are still single numbers with potential for all numbers within a given set.

I am not sure whether the infinites are at the same level of definition as the undefined numbers or if they are at a level slightly above that. I really have no idea if this holds at all at a larger scale but it is at least some way of making sense out of the concept of infinity. What do you think?

Share this comment


Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now