Hi,
DarkBASIC may not be the tool I need for this job. I have almost no experience using DB so excuse me if this is ridiculously inappropriate. It'll take some time to explain what I want to do, so please bear with me as I'm in a bit of a quandary.
Using Mediachance Multimedia Builder, I've made a program for helping the user to design a project. The project could be pretty much anything, but it will always have different kinds of elements that the user arranges, deletes, renames, creates, etc.
Anyway, this program was completed a week ago. Since then, it occurred to me it'd be great to add a new section to the program where the user could see their project as a 3D arrangement. All the planning they've done in the program would be translated into a primitive 3D "mindmap" - nice and retro.
Now I know exactly how I want the translation to be done, and I know exactly how I want the 3D result to look. The problem is, I have no idea how to achieve it. I would appreciate any advice from the people around here on how to do it.
What I want is a simple black background, and the elements of the user's project shown as primitive 3D shapes - a cube, a cone, a sphere and so on. And we're talking VERY primitive, like this:
The user should be able to add new elements (shapes) directly to the 3D visualisation, and to change the colours of shapes. They should also be able to click on any shape and the app would send an instruction to the MMB app ("shape clicked: cube16), which would display the details of the project element that the shape represents.
I want the 3D presentation to be binded into the MMB app - a window within the window. I know for a fact this is possible and that MMB can send instructions to a binded app. Yesterday I binded a very simple DB exe into the MMB app without any problems, except that it took about 5 seconds to load up.
It seems there are two options here.
a) I find an executable that already exists for this task. It would be controllable from the command line, and my program would feed instructions to it: "create x number of spheres, position sphere 1 here, sphere 2 here, colour sphere 6 rgb(128,0,92)" etc. Unfortunately I've been scouring the net for the last few days and haven't found anything.
b) I code such a program myself.
The latter option would require me to learn a new programming language. If necessary, I'm happy to do that - preferably BASIC - but does anyone know of an existing software utility that does what I want already? Secondly, if you think I'd be better creating the program myself, can you recommend a program to code it in? Do you think using DB to do this would be overkill? The wrong tool for the job?
Here are the requirements:
1. The app must be able to generate an infinite number of primitive 3D shapes,
during runtime.
2. The app is almost 100% controlled from the host app.
3. The app can send information to the host app (shape clicked / mouse dragged to xyz pos / shape's xyz pos / etc.)
4. The app can compute distance+angle between two shapes for creating a link between them (the grey line in the image above)
5. Ideally, the app can take camera instructions from mouse dragging and from the host app, so that the user can move around their 3D plan.
Finally, if you can think of a better forum for me to ask this question in, please let me know as I don't like treading on people's toes. Once again, I apologise if this is the wrong place but I'm at a loss here.
Thanks in advance for any help,
Seymour.