This will probably be my last post before the Google Summer of Code deadline (which is tomorrow). I will still be posting with the same frequency as I did over the summer, as I work on the remaining elements of the COLLADA Conversion System - I just need to make sure I make a clear distinction of what I did before the deadline, and what is being done after the deadline. This post is that distinction. In addition, I won't be committing anything to the repository until next weekend, in order to give the reviewers a chance to look at what was done before the deadline.
That said, there are a number of things that still need to be developed in the COLLADA Conversion System. A list of these things is available at: http://www.crystalspace3d.org/trac/CS/wiki/COLLADA%20Conversion%20System
Please note that the list isn't complete, and a lot of the things currently on the list will be (hopefully) finished by the end of the summer or midway through the fall. I fully intend to keep working on this project throughout the fall and winter.
I'd like to take this opportunity to thank everyone who so graciously helped me this summer, including (but not limited to): Fossi, thebolt, MistaED, res2k, and jorrit. In addition, I am really thankful that the Crystal Space organization gave me this opportunity - it was an excellent experience, and a whole lot of fun! I think that this was the best way for me to begin contributing to the Crystal Space codebase, and I recommend to anyone interested in the same to apply for the Google Summer of Code next year with Crystal Space.
Finally, if you are interested in contributing and/or helping with the future development of the COLLADA conversion system, please feel free to contact me at firstname.lastname@example.org. I will give you up-to-date reports on what I have accomplished since this posting, and help you get acclimated to my coding style.
Just a brief update on my progress:
Normal and texture coordinate conversion (if they are given in the COLLADA file) are now complete, and working in viewmesh. I am currently working on getting blender to export the texture filename (it doesn't seem to want to do this), but once that is complete, I will be able to check my conversion of textures in general.
For the rest of the day, I plan to accomplish the following:
I was able to finish coding basic materials. The collada convertor now converts a color to a material, corresponding to the diffuse color of the <phong> or <blinn> shader in the COLLADA file, and then adds a <material> tag to mesh objects which utilize it.
Additionally, with help from thebolt and res2k, I was able to get the object to show up inside viewmesh. Both the material and geometry conversions seem to work quite well.
I have begun work on translating texture coordinates, as well as textures themselves. I anticipate this will be completed by either tomorrow afternoon, or possibly Saturday, depending on how many problems I encounter. I will then work on the world/scene conversions.
I have nearly completed the basic materials conversion process. What remains, at the moment, is to convert from a csColladaMaterial object, which holds specular, diffuse, and ambient colors (COLLADA treats materials as shaders, which poses a slight problem when shaders aren't being used to their full extent), as well as some supporting information, which will be useful when we move from basic materials to shaders in the future, to the XML needed for the Crystal Space document. I expect this conversion should be finished tomorrow, at which time I will begin debugging the materials conversion process, and adding what needs to be added to make it sound.
Following this, I intend to work on the scene conversion, which will only be applicable for Crystal Space map files. I expect this will be fully finished and ready for use by August 20. Unfortunately, I think that the COLLADA Physics, advanced effects, and rigging/animation conversions will not be completed by the GSoC deadline of August 20. I believe that I will be able to get most of the rigging/animation, as well as possibly, the FX conversion, completed by the time school starts again. Of course, progress will slow once school starts, but I fully intend to continue working on this project even after I return to classes.
Some good news, on the other hand, is that I have almost finished the algorithm for 3D polygon surface triangulation, with some help from Dr. Martin Held. I am going to put this up in UML activity diagrams, and then post it, so folks have a chance to look it over, and give me their feedback, before implementing it. I will also be modifying the 2D triangulation conversion slightly, so that it works will polygons with holes. This won't happen until after the initial 3D triangulation algorithm is in place, however, so my initial COLLADA conversion code will not support polygons with holes - that is the <ph> tags.
|<< <||Current||> >>|