The Forum is up for sale: XeNTaX Forum looking for new owner

Creating a 3D Model Discovery Tool

Coders and would-be coders alike, this is the place to talk about programming.
Post Reply
invisghost
advanced
Posts: 55
Joined: Tue Jul 13, 2010 7:16 pm
Has thanked: 1 time
Been thanked: 11 times

Creating a 3D Model Discovery Tool

Post by invisghost »

Alright so I've been working on a basic 3d file exploration tool for the past few days. It's main feature would be the ability to see the preview as you change the offset of the vertexes in real time. But right now I'd like to ask some questions to the people who would actually use it before I get to programming the core stuff.

So here's the list of questions:

Performance or Features?
It's easy to throw together stuff and not care about performance but should it be considered and how much?
How important is it to be multiplatform?
Sticking to windows would simplify things tremendously but linux is doable if demand is high enough.
DirectX or OpenGL?
Kinda ties into the last question. OpenGL would allow for multiplatform but directX would provide faster speed and easier programming for windows. Both with a choice between the two?
Supported export filetypes?
.Obj is simple, but what else would be expected?
If a coding system is implemented what language should it be?
C# would be easy since there's parsers out there but C++ or even C would be a lot more difficult. Maybe even a custom specialized one?
Is it better to get beta's out right away or flush out the design first?
Basically do you want unstable things soon or would you wait for a well oiled machine?


Here's a list of possible features to be prioritized and maybe implemented:

[Unknown] Custom Coded Data Formats
Allowing for custom vertex structs and the like.
[Unknown] Plugin System
Allowing others to add support for file types and wha-ev.
[Unknown] Multi-threaded Design
Taking advantage of mutli-core processors basically.

I'd like to prioritize them on a scale of [Low] [Medium] [High] [Required]

If you can think of any other features that are to be expected or even required please feel free to post a reply! :keke:
tkGr33N
beginner
Posts: 25
Joined: Sat Sep 25, 2010 8:43 pm
Been thanked: 1 time

Re: Creating a 3D Model Discovery Tool

Post by tkGr33N »

IMO
invisghost wrote: Performance or Features?
It's easy to throw together stuff and not care about performance but should it be considered and how much?
Keep it simple, don't make some state of the art tool if you're working alone, most tools that are great and flawless* are made by giant corporations
* Flawless to an extent where you can put your own plug-ins in.
invisghost wrote: How important is it to be multiplatform?
Sticking to windows would simplify things tremendously but linux is doable if demand is high enough.
Multiplatform is not really all that great, regarding that most extracting tools are made for windows.
invisghost wrote: DirectX or OpenGL?
Kinda ties into the last question. OpenGL would allow for multiplatform but directX would provide faster speed and easier programming for windows. Both with a choice between the two?
Supported export filetypes?
Although, as stated above, some people already have extracted game files and just need to view it in someway, OpenGL is Complicated in different ways, but so is DirectX, but simpler.
invisghost wrote: .Obj is simple, but what else would be expected?
.dae, .3ds and .fbx is more common in the current industry, but .obj is leading atm.
invisghost wrote: If a coding system is implemented what language should it be?
C# would be easy since there's parsers out there but C++ or even C would be a lot more difficult. Maybe even a custom specialized one?
C# has a load of things that make other things simpler
invisghost wrote: Is it better to get beta's out right away or flush out the design first?
Basically do you want unstable things soon or would you wait for a well oiled machine?
Get the design later, first do all the coding, makes things simpler, and the probability to screw up is reduced

Also some sort of bms-like system, because really, you can't keep updating things.
invisghost
advanced
Posts: 55
Joined: Tue Jul 13, 2010 7:16 pm
Has thanked: 1 time
Been thanked: 11 times

Re: Creating a 3D Model Discovery Tool

Post by invisghost »

Thanks for your opinions :keke:

Ya, I've kinda been re-re-re-re-creating the program for the past few weeks. Each time getting a little more abstract. I'm probably going to go with directX just for the sake of being able to say "its directx". Lol I am indifferent to either one so flipped a coin and directx it is.

I was first thinking about coding it in C++ but that just is a headache in its own when trying to implement a plugin system so I'll just go with C#. C# is great with dynamics and has enough parsing libraries to more then meet the need of some sort of BMS system. I've just been trying to figure out how I'd implement something like that. It's simple enough for something like "here's my array of poly vectors (x,y,z) and here's how many there are" but some formats have (z,y,x), there's no way to predict what formats will be needed so i'll have to supply the tools to design your own but here's the challenging part, when working with an emulator's memory dump of that can be 300mb+ you need something that can quickly go through that file. Trying to do some benchmarks on different approaches atm.

Obviously it'll be open source since anything C# is open source :wink:.
tkGr33N
beginner
Posts: 25
Joined: Sat Sep 25, 2010 8:43 pm
Been thanked: 1 time

Re: Creating a 3D Model Discovery Tool

Post by tkGr33N »

invisghost wrote: Obviously it'll be open source since anything C# is open source :wink:.
Not everything made with C# is open source, but a lot of things are
EDIT: A simple solution for the custom data format, make something like

Code: Select all

texture001.dds;
-1.000, 0.500, 1.000
texture002.dds;
0.250, 0.125, -0.250
And so on, Naming the textures, and where they need to be stuck on, each line that starts with a numeral is a xyz vector line
Post Reply