Java-Gaming.org    
Featured games (81)
games approved by the League of Dukes
Games in Showcase (499)
Games in Android Showcase (118)
games submitted by our members
Games in WIP (567)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
    Home     Help   Search   Login   Register   
Pages: [1]
  ignore  |  Print  
  OpenCTM, mesh compression now in Java  (Read 2330 times)
0 Members and 1 Guest are viewing this topic.
Offline Danny02
« Posted 2012-05-27 12:11:11 »

Hi,
some months ago I was searching around the web how one could compress triangle meshes and I found OpenCTM.
After looking at it I think it is quite cool and ported it to Java, so one can use it without native libs.

here some size comparissions:



The way you can store your data is a little bit strict:
1 float3 position
0,1 float3 normal
x float2 texture coordinates with name
x float4 vertex attribute with name
1 material name per mesh
1 file comment

so I thought about altering the format a bit, making it a bit more general. So what do you think?

PS:
I finished it a month ago but thought I would first fix a final bug before releasing it, but because I did not had time until now to do the fix I just release it and do the last fix any time soon. The last bug is that the MG2 compression is not compatible to the original OpenCtm lib but everythung else works I think.
Offline davedes
« Reply #1 - Posted 2012-05-27 15:51:12 »

Woah, this is insanely cool. Thanks. Cheesy

Offline tberthel
« Reply #2 - Posted 2012-05-27 15:57:20 »

OpenCTM is cool, but GPL is a no go for me.

Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline Danny02
« Reply #3 - Posted 2012-05-27 16:23:36 »

mm the original C lib is under the zlib/libpng license

I just used the GPL at the beginning. I don't know which license I'm allowed to use or should atm.
I used perhaps some little snippets from the original lib, but the grater structure is from me.

I think I will change the license to some more free one then the GPL, but have to take a closer look first.
Offline sproingie

JGO Kernel


Medals: 202



« Reply #4 - Posted 2012-05-27 17:48:10 »

GPL taints any project it's used in.  LGPL would be fine.
Offline gouessej
« Reply #5 - Posted 2012-05-27 21:48:01 »

Hi

Does your port support Collada?

I think I will change the license to some more free one then the GPL, but have to take a closer look first.
Lol it depends on what you mean by "free". I assume some people here suggest you to choose a less "restrictive" license but keep in mind that some restrictions are useful to preserve some rights. Personally, I would use the same license than the C version even though I like the GPL.

Offline theagentd
« Reply #6 - Posted 2012-05-27 23:55:53 »

This is relevant to my interest.

GPL taints any project it's used in.  LGPL would be fine.
+1.

Myomyomyo.
Offline Danny02
« Reply #7 - Posted 2012-05-28 11:49:29 »

I didn't realize that the default license I choose, would start such an offtopic discussion Smiley. I changed it to the LGPL now. I really want others to be able to use the lib in any project they want, but I think it is fair that when someone finds bugs and fixes them for themselves or something else in the lib he should report them back.
Personally I would really like if every game producer would release their code to the public, even if the would do this only after a few months after the game release.

BTW any comments on the file format? The original project is dead I think, so I thought I(we?) could develop it further to be more practicably. My thoughts until now were:
-better support for materials
-animations
-generic vertex attributes
-better viewer to display the differences between quality settings with the lossy compression

Does your port support Collada?

Hi, the only thing what I wanted to achieve initially with my port, was to provide a lib to load OpenCTM files in Java. In the end I added the possibility to export too.

The OpenCTM project has already a rich toolset like a converter and viewer of the models. And there is no need to duplicate these too in Java. The official converter tool can read files of the following formats:
OpenCTM (.ctm)
COLLADA 1.4/1.5 (.dae)
Stereolithography (.stl)
Stanford triangle format (.ply)
3D Studio (.3ds)
Wavefront geometry (.obj)
LightWave object (.lwo)
Geomview object (.off)
Offline theagentd
« Reply #8 - Posted 2012-05-28 13:30:00 »

Needs bone animation!

Myomyomyo.
Pages: [1]
  ignore  |  Print  
 
 
You cannot reply to this message, because it is very, very old.

 

Add your game by posting it in the WIP section,
or publish it in Showcase.

The first screenshot will be displayed as a thumbnail.

Pippogeek (38 views)
2014-09-24 16:13:29

Pippogeek (29 views)
2014-09-24 16:12:22

Pippogeek (18 views)
2014-09-24 16:12:06

Grunnt (42 views)
2014-09-23 14:38:19

radar3301 (24 views)
2014-09-21 23:33:17

BurntPizza (61 views)
2014-09-21 02:42:18

BurntPizza (31 views)
2014-09-21 01:30:30

moogie (36 views)
2014-09-21 00:26:15

UprightPath (49 views)
2014-09-20 20:14:06

BurntPizza (53 views)
2014-09-19 03:14:18
List of Learning Resources
by Longor1996
2014-08-16 10:40:00

List of Learning Resources
by SilverTiger
2014-08-05 19:33:27

Resources for WIP games
by CogWheelz
2014-08-01 16:20:17

Resources for WIP games
by CogWheelz
2014-08-01 16:19:50

List of Learning Resources
by SilverTiger
2014-07-31 16:29:50

List of Learning Resources
by SilverTiger
2014-07-31 16:26:06

List of Learning Resources
by SilverTiger
2014-07-31 11:54:12

HotSpot Options
by dleskov
2014-07-08 01:59:08
java-gaming.org is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑gaming.org
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!