I recently came across a game called black hole while wasting some time on the net which is a computer version of a classic game called black box where you inject rays into the "box" in order to determine the position of the atoms/black holes hiding inside.

I did a little more searching to see if anyone had done something different with the classic formula and came across a game called Aargon black box which is a nice little game which replaces the atoms with prisms and mirrors and gets you to try and deduce some complicated fictional optical systems from how the light beams interact with the bits inside the box.

But I really liked the idea of trying to identify black holes hidden in space and wanted to do a 3D version. This is what I have come up with... the demo can be downloaded from here.

Like Aargon you inject light beams into the grid to identify the hidden objects inside, the main difference between this game and the classic game is that instead of the beams being deflected away from objects, they are actually bent towards them. Also some of the puzzles are totally in 3D which means that things can get fairly complicated.

Please take a look and let me know what you think... any comments & criticisms would be appreciated

I must say that the screenshots are really nifty! I would love to try out the game, but I assume it's written using DX8 or earlier versions of DirectX which I simple don't have preinstalled with Windows 7/Vista.

__________________Reading is the foundation for all knowledge - Unknown.

I've never worked with any version predating DirectX9 but I belive that if your software ships with the DX9 redistributable then it will be able to run DX7 apps as well. You might want to check up upon that though. I've heard that the latest SDK exclude a few vital type libraries, so you might have to include and register those manually.

I'm in no way an experienced in this area, but I'm sure others in here or google can help you

__________________Reading is the foundation for all knowledge - Unknown.

Well, usually I never read any legacy threads but I can't resist checking out any game demoes. I feel that others might have it the same way, so instead of posting this strictly to legacy users you might want to try out the tech or random forum.

You could also try out news feeds like Reddit gaming/programming

__________________Reading is the foundation for all knowledge - Unknown.

The game uses an upgrade of the UI that I coded for Star Admiral, that has sort of being going on and off in development for nearly 5 years now... the original version in 2D was pretty crummy but it has been a good learning experience.

Again I have managed to rip most of the graphics and display code from that game so there actually wasn't a lot to do with this game. The hardest part was actually implementing the light bending and converting it from paper to code and then making it work graphically. I've never done smooth curves before but after a bit of trial and error I stumbled across a solution that I can make scalable... If you turn smoothing off in the options you can see closer how the game represents light pathways, basically as a series of direction vectors. From start to now I'd say I spent a good 4-5 weeks upgrading and coding this.

Well for UI animations I have the following:
1) fade in and fade out with gamma when moving to non-connected screens
2) camera flyby sort of like Warcraft III when navigating the main menu and player setup etc...
3) All UI components highlight when moused over and change colour/icon when clicked. There are also tooltips available for some controls.
4) The selection/control ring (see attached image) The selection around the object is animated and provides easy access to all needed functions to interact with the object.

The UI has the ability for forms to slide in/out of the screen but I decided not to use it in this game.

I couldn't resist. I downloaded and registered dx8vb.dll which was reported missing when the application was executed. The application succesfully started up and displayed a full screen form, but another error was informed to me

Quote:

Run-time error '429':

ActiveX component can't create object

I guess Microsoft was serious when they said that developers shouldn't count on legacy visual programming functioning on Vista and Windows 7 even if people manually installed the vb runtimes.

DirectX 7 is getting a bit old anyhow. Haven't you considering moving up to at least DirectX 9?

__________________Reading is the foundation for all knowledge - Unknown.

What a pain... I don't suppose you could attach the DDlog.txt file in the game data folder for me to look at?

I definitely am intending to move over to DX9 or XNA... I have been avoiding it because I know how much work is going to be required to make the shift and port the engine over... this is a real issue for hobbyists, by the time you actually get something made the technology has moved on to the point that what you have made cannot run.

I am hoping that I'll be able to keep most, if not all of the engine intact and only change the underlying DX calls that make images display... I mean fundamentally a mouse is a mouse and a vertex is a vertex, the math doesn't change.

__________________
Automation error... What do you mean automation error you %#@*&!$ thing!

I definitely am intending to move over to DX9 or XNA... I have been avoiding it because I know how much work is going to be required to make the shift and port the engine over... this is a real issue for hobbyists, by the time you actually get something made the technology has moved on to the point that what you have made cannot run.

I am hoping that I'll be able to keep most, if not all of the engine intact and only change the underlying DX calls that make images display... I mean fundamentally a mouse is a mouse and a vertex is a vertex, the math doesn't change.

True, even DX9 seemes redundant to learn with both DX 10 and 11 out, and DX9 being officially unsupported in favor for XNA.

__________________Reading is the foundation for all knowledge - Unknown.

Which do you think is the better new version to learn DX9 or XNA, bearing in mind that I am still running XP and have a DX9 compatible GFX card. What I don't want to do is spend a lot of time learning something that is going to be obsolete soon and DX9 is definitely no longer new.

__________________
Automation error... What do you mean automation error you %#@*&!$ thing!

I'm not much assistance. I've personally never used anything else than DX9. I've given XNA a try but only with simple 2D games, so I won't be able to compare the two of them.

At this point it doesn't seem like Microsoft is planning to support a managed version of DX10/11. And XNA won't be upgraded to use either as well before a new XBox is released that can actually harness those technologies (XBox 360 only supports DX9).

Actually, by the few glimpses I've seen of XNA it seemes like DX9 and XNA are rather similiar when working in a 3D environment except for the fact that XNA is a lot more polished an easier to use. Same concepts of math, matrices and effects though. Since DX9 no longer is supported I guess it would be kind of obsolete to start learning it now.

__________________Reading is the foundation for all knowledge - Unknown.