Author Topic: An effort to replace the POF format  (Read 8601 times)

0 Members and 1 Guest are viewing this topic.

Offline Quanto

  • 28
  • Permanent Nostalgia Goggles
An effort to replace the POF format
The Preamble:
In the #wod channel we had a conversation.
About model conversion, and how much of a convoluted process it is, the fact that .cob sucks, .pof is older than dirt, and dae is not as reliable as we wish it could be.
I went on to mention that the SpringRTS project had long ago replaced the ancient .3do format with one of their own. One that was modern and supported a number of features the old one was never able to do. From there they created a tool similar to PCS2 called "Upspring" and export plugins for 3DsMax and Blender.

The Proposal:
To do what has long need to be done and create a replacement for .cob, dae. and .pof all at the same time.
We call it ".pomf"
or "Parallax Object Motion File"

The new Short-term goal is to create native opencollada support within freespace.
Github Link: https://github.com/elQuanto/OpenCOLLADA

The key feature here being native support for keyframed animations. We want to start slow with things such as translation, rotation, and scaling animations.
I would love to see us create bone based animations as well, but in the distant future.
Other features include updating PCS2 to support the format, and to create 3D Studio Max and Blender plugins to import and export models.

The Team:
Quanto
DahBlount
Vaktezraj
« Last Edit: April 05, 2014, 11:57:22 pm by Quanto »
00:41:58 <DarthGeek>: I might do it, I need to build a reputation of someone who doesn't suffer fools
(DarthGeek on: "Relentless")

 

Offline AndrewofDoom

  • In A.D. 2366 war was beginning
  • 29
  • Permanent yuri goggles.
    • Skype
    • Steam
    • Twitter
Re: An effort to replace the POF format
Do I hear big massive cannons recoiling? Oh yes I would support this.
My Efforts:
SF Knight

20:08:19   AndrewofDoom: Though I find it mildly disturbing that a loli is giggling to mass destruction.
20:10:01   Spoon: I find it mildly arrousing
20:10:07   AndrewofDoom: Woah
20:10:15   Spoon: sound like my kind of loli
20:10:21   Spoon: and im not even a lolicon

 

Offline An4ximandros

  • 210
  • Transabyssal metastatic event
Re: An effort to replace the POF format
I would jump on on this ship if I knew the first thing about code at this time. You have my support in this though. It is long overdue.

 

Offline DahBlount

  • Moderator
  • 29
  • Alpine ☆ Cancer Tribulation
    • Minecraft
    • Skype
    • Steam
Re: An effort to replace the POF format
The main situation here after some discussion on #scp appears to be mainly making an extension of the .dae format, with better plugin support for Max/Blender and aim to make this more of an "Animated DAE" project than a new file format entirely.

DAE would really be augmented by hierarchy improvements and tbh, most of the work for the plugins are already done, as such I suggest we go with the FCollada library as our basis as it is one of the most advanced libraries AND is open-source.
Unfortunately FCollada is dead so we'll have to go with OpenCOLLADA. OpenCollada already has plugins for Max/Maya/Blender and they appear to be new and improved. Most of the work I see here would be implementing into FSO and PCS2.

Another part would be gaining popular support among the modders/authors. We need to listen to what they want and need.
I for one think we should augment PCS2 with this instead of creating an entirely new conversion interface.
<Axem> yet still more insightful than #hard-light

<Axem> jad2.23 will just be cat videos

<DahBlount> So
<DahBlount> JAD2.2 is like that
<Axem> maybe
<Axem> it can be whatever you like!
<DahBlount> A Chocolate Sundae?
<Axem> sure

My models: GTF Gilgamesh - GTD Nuadha [Redesigning] - Ningirama [WIP] - GTG Zephyrus

 

Offline Quanto

  • 28
  • Permanent Nostalgia Goggles
Re: An effort to replace the POF format
Switching over to OpenCollada native support is now our short-term goal.

Here is a link to our github repository for any who wish to offer assistance.
https://github.com/elQuanto/OpenCOLLADA
00:41:58 <DarthGeek>: I might do it, I need to build a reputation of someone who doesn't suffer fools
(DarthGeek on: "Relentless")

 

Offline Droid803

  • Trusted poster of legit stuff
  • 213
  • /人 ◕ ‿‿ ◕ 人\ Do you want to be a Magical Girl?
    • Skype
    • Steam
Re: An effort to replace the POF format
Well, I already use OpenCOLLADA to get models from Max -> PCS2.
So are we looking to get the engine to read OpenCollada DAEs? or just piggybacking/extending it to bring into a program that will make our "new" format that the engine will use (that carries less of the generalist baggage and is more optimized for FSO?)
(´・ω・`)
=============================================================

 

Offline DahBlount

  • Moderator
  • 29
  • Alpine ☆ Cancer Tribulation
    • Minecraft
    • Skype
    • Steam
Re: An effort to replace the POF format
We're going to work on getting FSO able to use OpenCollada .daes first and THEN we will extend and optimize them for FSO.
<Axem> yet still more insightful than #hard-light

<Axem> jad2.23 will just be cat videos

<DahBlount> So
<DahBlount> JAD2.2 is like that
<Axem> maybe
<Axem> it can be whatever you like!
<DahBlount> A Chocolate Sundae?
<Axem> sure

My models: GTF Gilgamesh - GTD Nuadha [Redesigning] - Ningirama [WIP] - GTG Zephyrus

 

Offline m!m

  • 211
Re: An effort to replace the POF format
Just so you know, there is already a library out there that can handle parsing of quite a few 3D formats, including DAE: https://github.com/assimp/assimp

 

Offline The E

  • He's Ebeneezer Goode
  • Global Moderator
  • 213
  • Nothing personal, just tech support.
    • Steam
    • Twitter
Re: An effort to replace the POF format
Here's my perspective on this. I generally like the idea of teaching FSO how to read other model formats. However, what I am not all that keen on are derivatives of standard formats that need special exporters and converters; I'd rather want all the FSO-specific bits in a separate table entry. Reason being that each piece of custom infrastructure adds another item on the list of things we need to support and develop; I do not want to create a large ecosystem of barely understood pieces of software that will collapse in a few years.
**** every cause that ends in murder and children crying. ― Iain Banks
Join the fun at the HLP IRC channel. Get the latest spam and gossip as long as it's fresh!

 

Offline Colonol Dekker

  • HLP is my mistress
  • 213
  • Aken Tigh Dekker
    • My old squad sub-domain
Re: An effort to replace the POF format
A sub section in the ship the entry? Or a similar small file accompanying each mesh?

 

Offline The E

  • He's Ebeneezer Goode
  • Global Moderator
  • 213
  • Nothing personal, just tech support.
    • Steam
    • Twitter
Re: An effort to replace the POF format
I don't think those specifics matter at this stage.
**** every cause that ends in murder and children crying. ― Iain Banks
Join the fun at the HLP IRC channel. Get the latest spam and gossip as long as it's fresh!

 

Offline Dragon

  • Citation needed
  • 212
  • The sky is the limit.
Re: An effort to replace the POF format
If this happens, PCS needs to be able to generate this sort of table data. Manually fine-tuning those things is very convenient, especially when there's a lot of data (some stuff I made for BP has well over 50 glowpoints!). Manually writing in such a huge amount of model points is a real chore (that's why I never got around to adding RCS thrusters to ships I wanted to have them on).

 

Offline Nuke

  • Ka-Boom!
  • 212
  • Mutants Worship Me
Re: An effort to replace the POF format
i like standard model format (dae for example) + pof chunk data, but in a table. it gives you a fast new way to add features to the model format (stuff normally generated with pcs2) without having to recompile pcs2 to support them. engine supports new model feature? add it to the table, better/faster than reconverting all your models. you can get other cool things like keyframe animations which i think dae supports.
I can no longer sit back and allow communist infiltration, communist indoctrination, communist subversion, and the international communist conspiracy to sap and impurify all of our precious bodily fluids.

Nuke's Scripting SVN

 

Offline DahBlount

  • Moderator
  • 29
  • Alpine ☆ Cancer Tribulation
    • Minecraft
    • Skype
    • Steam
Re: An effort to replace the POF format
Just so you know, there is already a library out there that can handle parsing of quite a few 3D formats, including DAE: https://github.com/assimp/assimp

We didn't know that. We'll look into it.


When we get FSO able to parse DAE we'll most likely add some optional bits to the tables. Keyframe animations are another good point worth using DAE for as well.
<Axem> yet still more insightful than #hard-light

<Axem> jad2.23 will just be cat videos

<DahBlount> So
<DahBlount> JAD2.2 is like that
<Axem> maybe
<Axem> it can be whatever you like!
<DahBlount> A Chocolate Sundae?
<Axem> sure

My models: GTF Gilgamesh - GTD Nuadha [Redesigning] - Ningirama [WIP] - GTG Zephyrus

 

Offline The Dagger

  • 29
  • I like zod ships
Re: An effort to replace the POF format
Maybe PCS2 could be a better place to start? It does handle both pof and DAE and the source is available too...
http://sourceforge.net/p/alliance/pcs2/ci/master/tree/

 

Offline Echelon9

  • 210
Re: An effort to replace the POF format
As one of the SCP coders, can I strongly reiterate that you should aim to use an open standard format, without breaking modification (if any modification at all).

1. It means you straight away get a bunch of infrastructure and tooling that "just works" e.g. Blender plugins / converters
2. Doesn't leave the SCP project with technical debt maintaining an ecosystem of slightly modified versions of upstream tools, per The_E.

Good luck to you!

 

Offline Nuke

  • Ka-Boom!
  • 212
  • Mutants Worship Me
Re: An effort to replace the POF format
Just so you know, there is already a library out there that can handle parsing of quite a few 3D formats, including DAE: https://github.com/assimp/assimp

i like how this library supports every quake format ever. even quake3 maps. quake3 maps, in my freespace.
« Last Edit: April 11, 2014, 01:33:40 pm by Nuke »
I can no longer sit back and allow communist infiltration, communist indoctrination, communist subversion, and the international communist conspiracy to sap and impurify all of our precious bodily fluids.

Nuke's Scripting SVN

 

Offline Bryan See

  • Has anyone really been far as decided to use even go want to do look more like?
  • 29
  • Trying to redeem.
    • Skype
    • Steam
    • Twitter
Re: An effort to replace the POF format
OK, since Quanto and Vaktezraj might not be helping you, DahBlount. I'm interested in working this as well. I know about C++ and Object-Oriented enough, and I am ready to take up the challenge.
Bryan See - My FreeSpace Wiki User Page (Talk, Contributions)

Campaigns:
FreeSpace: Reunited - Shattered Stars

Ships:
GTS Hygeia, GTT Argo, SC Raguel

 

Offline DahBlount

  • Moderator
  • 29
  • Alpine ☆ Cancer Tribulation
    • Minecraft
    • Skype
    • Steam
Re: An effort to replace the POF format
Alright I'll get you hooked up with Git access.
<Axem> yet still more insightful than #hard-light

<Axem> jad2.23 will just be cat videos

<DahBlount> So
<DahBlount> JAD2.2 is like that
<Axem> maybe
<Axem> it can be whatever you like!
<DahBlount> A Chocolate Sundae?
<Axem> sure

My models: GTF Gilgamesh - GTD Nuadha [Redesigning] - Ningirama [WIP] - GTG Zephyrus

 

Offline DahBlount

  • Moderator
  • 29
  • Alpine ☆ Cancer Tribulation
    • Minecraft
    • Skype
    • Steam
Re: An effort to replace the POF format
Found this https://github.com/sbarthelemy/collada-dom

The COLLADA Document Object Model (DOM) is an application programming interface (API) that provides a C++ object representation of a COLLADA XML instance document.
<Axem> yet still more insightful than #hard-light

<Axem> jad2.23 will just be cat videos

<DahBlount> So
<DahBlount> JAD2.2 is like that
<Axem> maybe
<Axem> it can be whatever you like!
<DahBlount> A Chocolate Sundae?
<Axem> sure

My models: GTF Gilgamesh - GTD Nuadha [Redesigning] - Ningirama [WIP] - GTG Zephyrus