From K-3D

Jump to: navigation, search

GSoC Project: Import and Export plug-ins

This is my GSoC project homepage where I'm going to keep a detailed description of my current activities and progress.


Formats to be supperted on the first stage of the project.


27 April - 3 May

In order of priority:

  • Group the complete set of plug-ins to be developed: with Joe and Joaquin
  • Design a robust structure to easily code mesh readers and writers: I was thinking on some kind of template class as the components are basically the same between formats and mostly changes on parsing methods.

May 4 - May 11

  • Read SVG documentation
  • Read libxml2 documentation
  • Implement a simple svg importer for just a path curve

May 12 - May 18

  • Started the SVG MeshReader
  • Design and Implemented first version of the parsing scheme
  • Implement SVG rectangles

May 19 - May 25

  • Mid-term evaluations at school, didn't make any progress

May 26 - June 1

  • Completed SVG path reading
  • Continue completing SVG primitives reading (hopefully fully implement all by June 1)

June 2 - June 9

  • Completed SVG primitive parsing
  • Work on coordinate transformation attributes

June 10 - June 17

  • Conclude primitive parsing (I was having trouble with the parsing of the arc attribute of the path primitive but I saw some implementation details on the SVG documentation and worked it out)
  • Conclude by documenting the SVGReader

June 18 - July 1

  • Started reading COLLADA specification
  • Started reading and redesigning COLLADA mesh reader started by Mattia
  • Added transformation handling for daeParser
  • Started a wiki to show COLLADA importing expectations
  • Started COLLADA importer and extended daeParser to handle cameras, lights and meshes
  • Started importing of cameras and lights (no attributes yet just node creation)

July 1 - July 8

  • Redesign of COLLADA element loading
  • Redesign of Node creation for document importing
  • Mesh importing completed
  • Working on importing non k3dsdk primitives as nodes (lights, cameras, transformations)
  • Working on connecting nodes

Up till now (July 31)

I haven't updated the wiki recently and lost track of what happened each week so here is the overall till now:

  • Completed collada mesh reader
  • Completed collada mesh writer
  • Completed first iteration of collada document importer (correctly loads nodes, transformations, cameras and meshes, with it's proper correct instancing, still missing other node tipes and parenting)
  • Second iteration on SVG mesh reader (paths and lines using a single curve)
  • Completed md2 mesh reader
  • Wrote docuemtation of plug-ins so far on wiki
  • Commented the code so far
  • Worked on test files for plug-ins so far
  • Almost finished with the 3ds mesh reader

August 1 - August 8

  • Finish 3ds reader
  • Start second iteration of collada, and support texture coordinates and material properties

All the way to "pencil's down date" August 18

  • My primary goal for this deadline is to leave the collada plug-ins as functional as possible with the things I've been working on. Some special issues to work on are:
    • Parenting
    • Transformations
    • Empty nodes in collada hierarchy tree
    • Texture coordinates
    • Basic material managing
    • Basic light managing
    • Conclude camera importing


Working on SVG MeshReader:

  • Completed primitives reading
  • Completed path reading

SVG Documentation

Other links


my homepage

Personal tools