118
A&M Visualization Laboratory ©2007 dave morris 1 Open Source 3D Modeling Software Development with Qt Dave Morris

TopMod3d - Texas Open Source Symposium

Embed Size (px)

DESCRIPTION

This is a presentation I gave at the Texas Open Source Symposium in San Angelo, TX on April 25th, 2008. It was mostly based on my graduate thesis research at the Texas A&M University Visualization Laboratory. http://www.topmod3d.org/ http://www-viz.tamu.edu/

Citation preview

Page 1: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris1

Open Source 3D Modeling Software Development with Qt

Dave Morris

Page 2: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris2

Overview

• Introduction

• Motivation

• Prior Work

• Implementation and Results

• Conclusion

• Future Work / Commercialization

• Acknowledgments

Page 3: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris3

Introduction

• New graphical user interface for interacting with 3d topological meshes.

• Built upon a Doubly Linked Face List (DLFL) structure that guarantees manifold meshes.

• Intuitive, familiar interface elements based on paradigms set by other popular 3d modeling applications.

• Free, open source, portable, platform independent, localizable.• Web community with a discussion forum, and image gallery,

collaborative documentation, news updates, software downloads, etc...

Page 4: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris4

Introduction

• Doubly Linked Face List (DLFL)• Linked List Data Structure

• Face list, Edge list, Vertex list• Represent Corners as Face-Vertices

• Output meshes guaranteed to be 2-manifold• Rapid prototyping / manufacturing• Developable surfaces

Page 5: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris5

OBJ vs. DLFL

• Cube - Obj Format

• Cube DLFL Format

Page 6: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris6

Introduction

• TopMod• Topological mesh modeling system• Originally created in 2000• C++ implementation• Ability to create high-genus 2-manifold meshes• Complex operations built on the minimal set

• Extrusions• Subdivision schemes• High-Genus operations• Planar Modeling

• Bezier patch rendering/exporting

• Counter-intuitive, unfamiliar user interface

Page 7: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris7

TopMod v1

QuickTime™ and aVideo decompressor

are needed to see this picture.

Page 8: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris8

Overview

• Introduction

• Motivation

• Prior Work

• Implementation and Results

• Conclusion

• Future Work

• Acknowledgments

Page 9: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris9

Problems

• Unfamiliar user interface• Disorganized hierarchy of menus and tool options• Only runs on Windows. :(• Static interface elements, not customizable• No clear system of keyboard shortcuts• Minimal viewport/display options• Only handles Wavefront OBJ file format and proprietary DLFL format• Only available in English• No centralized web community for discussion and development• No user or developer documentation• Closed source code• Lack of interest from students to develop it further• Development was slowing almost to a stop

Page 10: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris10

Motivation

Page 11: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris11

Goals

• Topmod interface should be familiar and intuitive • Needs an organized hierarchy of menus and tool options• It should be platform independent and portable• Interface elements should be customizable• It should have programmable keyboard shortcuts for all tools/options• The viewport should be configurable• It should be able to export other file formats• It should be available in multiple languages• It should have a web site that promotes discussion and development • It should have clear documentation for users and developers• It should be open source to encourage future development

Page 12: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris12

Solutions

• TopMod interface needs to be redesigned from scratch• Use a more appropriate user interface toolkit• Begin redesign process with the problems in mind• Use other popular 3d modeling applications as a starting point

• Interface code should be separated from the DLFL data structure• Move DLFL operations into two libraries - Core and Auxiliary (Stuart Tett)• Integrate past thesis work that never made it to the final version

• Build a centralized web community• Distribute new software releases and news • Promote discussion and current/future development• Share a single, open source code repository• Get dugg

Page 13: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris13

Overview

• Introduction

• Motivation

• Prior Work

• Implementation and Results

• Conclusion

• Future Work

• Acknowledgments

Page 14: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris14

Prior Work - Maya

• Hierarchy of menus/icons/toolbars

• Floating tool option windows

• Highly customizable viewport

• Heads up display

Page 15: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris15

Prior Work - Blender

• Open source

• Localizable interface

• Platform independent

• OpenGL viewport/interface

• Programmed almost entirely

• By one person

Page 16: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris16

Prior Work - Rhinoceros 3D

• Command Line Interface

• Auto-completion

Page 17: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris17

Prior Work - Wings3D

• Open source

• Platform independent

• Context-sensitive right click menus

• Sub-object selection routines

• Winged Edge Data Structure

Page 18: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris18

Prior Work - Google Sketchup

• Value Control Box

• Ruby Script Engine

• Localized

Page 19: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris19

Prior Work - Other 3D Modeling Applications

Page 20: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris20

Prior Work - Popup Command Line Interfaces

• Quicksilver for OS/X

• Launchy for Windows

Page 21: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris21

Prior Work - GUI Toolkits• FLTK

• Free, open source, platform independent, lightweight, C++• Fast, small footprint• Limited choice of interface widgets and features

• wxWidgets• Free, platform independent, native mode drawing, C++• Can create custom widgets.• Available in other languages (Perl, Python, LUA, Ruby, Java, etc...)

• GTK• Free, open source, C / C++• Not native to OS/X, requires X11• Steep learning curve• Other languages (Python, Perl, Java, Ruby, Pascal, PHP, etc...)

• Fox, GLUI, Tk, YAAF, Agar, Juce, NovaTK, Quinta, VCF, etc...

Page 22: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris22

Prior Work - Trolltech Qt

• Created in 1991 by Haavard Nord and Eirik Chambe-Eng• Incorporated into Quasar Technologies in 1994, later changed to Trolltech• Key Features

• C++• Platform Independence• Open Source (GPL) or Commercial License• Meta Object Compiler - Signals and Slots• Asynchronous input and output / event driven constructs• OpenGL module, XML module, internationalization module• Native mode widget drawing

• Existing Applications/Companies using Qt• Google Earth, Skype, KDE Desktop, Adobe Photoshop Album• HP, Disney CHIP, Lucasfilm Animation, ILM, etc...

Page 23: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris23

Qt Users

Page 24: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris24

Overview

• Introduction

• Motivation

• Prior Work

• Implementation and Results

• Conclusion

• Future Work

• Acknowledgments

Page 25: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris25

Implementation and Results

• Overview• Removing FLTK dependency• Redesigning the interface using Qt• New sub-object selection routines for vertices, edges, and faces• Consolidate old thesis research projects into the new version• Platform independence and portability• Internationalization• Heads up display• Creating an online community

• Blog, Wiki, Forum, Image Gallery, Code Repository• Usage Statistics and Visitor Tracking

Page 26: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris26

Implementation and Results

• Overview• Removing FLTK dependency• Redesigning the interface using Qt• New sub-object selection routines for vertices, edges, and faces• Consolidate old thesis research projects into the new version• Platform independence and portability• Internationalization• Heads up display• Creating an online community

Page 27: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris27

Removing FLTK Dependency

• FLTK provides very few widgets• Not intuitive or user friendly• FLTK project is not well supported or updated frequently• Difficult to set specific values for various operations such as extrusion length• Lack of precision

Page 28: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris28

Removing FLTK Dependency

• Rewrote OpenGL display class• Rewrote all file handling operations• Rewrote all code dealing with user interface widgets and menu options• Recreated similar interface to original, in Qt

Page 29: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris29

Implementation and Results

• Overview• Removing FLTK dependency• Redesigning the interface using Qt• New sub-object selection routines for vertices, edges, and faces• Consolidate old thesis research projects into the new version• Platform independence and portability• Internationalization• Heads up display• Creating an online community

Page 30: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris30

Qt Redesign

• Use a variety of Qt classes to create an intuitive interface• QAction - to drive all menu commands, toolbar icons, etc...• QMenu - can be nested, collapsible, floatable, display custom shortcuts• QIcon - to graphically represent a QAction• QToolBar - for groups of icons• QPopupMenu - for right click context menus• QDockWidget - floatable window for tool options• QDoubleSpinBox - widget that allows a user to choose a specific number• QGLWidget - to display and interact with the 3d mesh• QPushButton - to perform operations

• Other Qt classes were used for color picking, labeling, 2D drawing, text completion, check boxes, radio buttons, a status bar, real-time translation, shortcut management.

Page 31: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris31

Qt Redesign

• New interface

Page 32: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris32

Viewport Customization

Page 33: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris33

Preferences Dialog

• Camera FOV, near plane, far plane• Auto save• Incremental save• Default Save Directory• Viewport Colors• Line Weights/Lengths• Keyboard Shortcuts• Custom Stylesheets

Page 34: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris34

Popup Command Line Interface

• Invoked by pressing spacebar key and typing• Navigate list with mouse or arrow keys• Hit enter

Page 35: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris35

Other Features

• Floatable Tool Bars• Fullscreen mode• Save Screenshot buttons• STL Export• Lg3d Export

Page 36: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris36

Implementation and Results

• Overview• Removing FLTK dependency• Redesigning the interface using Qt• New sub-object selection routines for vertices, edges, and faces• Consolidate old thesis research projects into the new version• Platform independence and portability• Internationalization• Heads up display• Creating an online community

Page 37: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris37

Selection Routines

• Work on Sub-object elements (Faces, Vertices, Edges, Corners)

• Global Routines:• Select All• Select Inverse• Select Multiple• Select Similar• Selection Window• Grow Selection• Shrink Selection• Clear Selected

• Faces• Face Loop• By Surface Area• Checkerboard Selection

• Edges• Edge Loop• Edge Ring

• Vertices• Edit Vertex

• Selection Conversions• Swap edges for verts/faces• Swap verts for edges/faces• Swap faces for verts/edges

Page 38: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris38

• Select Inverse

• Select Multiple

• Select Similar

• Selection Window

Global Routines

Page 39: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris39

• Edges

• Vertices

• Faces

Grow/Shrink Selection

Page 40: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris40

Selection Conversions

• Vertices to Edges or Faces• Edges to Faces or Vertices• Faces to Edges or Vertices

Page 41: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris41

Face Selection Routines

• Face Loop

• Similar Surface Area

• Checkerboard • 2-colorable

Page 42: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris42

Edge Selection Routines

• Edge Loop

• Edge Ring

Page 43: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris43

Implementation and Results

• Overview• Removing FLTK dependency• Redesigning the interface using Qt• New sub-object selection routines for vertices, edges, and faces• Consolidate old thesis research projects into the new version• Platform independence and portability• Internationalization• Heads up display• Creating an online community

Page 44: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris44

Previous TopMod Thesis Work / Research

• Code separated into many different version on the Viz server• Planar (Conical) sculpting work by Ozgur Gonen• Advanced extrusion operators by Eric Landreneau• Vertex Editing by Brian Barran• Bezier Patch Rendering by Vinod and Ergun• Rectangular wireframe modeling function hidden in existing code• New approach to interactive rind modeling• New approach to extrusions• New approaches to other basic operators

• subdivide edges, delete edges • subdivide faces, etc…

• Scripting Interface by Stuart Tett

Page 45: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris45

Planar Sculpting

• Cut by Edge• Cut by Vertex• Cut by Face• Convex Hull• Local vs. Global

Page 46: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris46

Advanced Extrusions

• Icosahedral

• Dodecahedral

Page 47: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris47

• currently working on an “edit multiple vertices” feature

Vertex Editing

Page 48: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris48

Bezier Patch Display and Export

• rendering capability by Vinod and Ergun• Export feature by Stuart Tett

Page 49: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris49

Asymmetrical Wireframe Modeling

• Wireframe modeling is simply a modified corner cutting subdivision combined with a call to the rind modeling function

• each function takes a thickness parameter• Users now have the ability to set each thickness to a different value

Page 50: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris50

Interactive Rind Modeling

• Obtain face selection set, then create the crust

QuickTime™ and aAnimation decompressor

are needed to see this picture.

Page 51: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris51

Multiple Extrusions

• Obtain face selection set first, then extrude• provide support for the old way

Page 52: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris52

Multiple Extrusions

Page 53: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris53

Other Basic Operators

• Subdivide Selected Edges• Subdivide Selected Faces• Delete Selected Edges• Delete Selected Vertices

QuickTime™ and aAnimation decompressor

are needed to see this picture.

Page 54: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris54

Scripting Interface Issues

• Written in Python by Stuart Tett• Would not compile in Windows• Mingw32 vs. Visual Studio• Posted issue to the discussion forum• Erik on the forum fixed it and posted a solution

Page 55: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris55

Implementation and Results

• Overview• Removing FLTK dependency• Redesigning the interface using Qt• New sub-object selection routines for vertices, edges, and faces• Consolidate old thesis research projects into the new version• Platform independence and portability• Internationalization• Heads up display• Creating an online community

Page 56: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris56

Platform Independence and Portability

• QMake Build System• As opposed to GNU Build System or handwritten makefiles• Helps streamline the build process on Linux, OS/X, and Windows• Project file manages custom include files and libraries per OS

• Wrote scripts to further automate the build process across all 3 platforms

• Store all needed libraries within a single local directory or bundle (OS/X)• Wrote custom scripts to build independent bundles on OS/X

• No need to install the application anywhere / Do not need admin privileges• Stores a preference file in the local user directory

• remembers viewport color settings, window size and location, shortcuts

Page 57: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris57

• Overview• Removing FLTK dependency• Redesigning the interface using Qt• New sub-object selection routines for vertices, edges, and faces• Consolidate old thesis research projects into the new version• Platform independence and portability• Internationalization• Heads up display• Creating an online community

Implementation and Results

Page 58: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris58

I18n

• Qt provides a simple library for interface translation• Wrap all displayable text in tr() function - tr(“text here”);• lupdate and lrelease programs generate custom translation files

• Translation data stored as .xml• Users and developers can translate text in Qt’s Linguist GUI application• Easy to use; no programming experience necessary

• Encourage TopMod users in foreign countries to help translate• Currently have a working French translation from “Frenchy Pilou”

• finished in one evening• Working on a German translation with user “sjoo” from the TopMod forum• I am working on a Spanish translation with a few users from Valencia• Waiting for Turkish / Hindi / Catalan / Italian / etc...

• I extended the functionality to make it happen real-time during execution

Page 59: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris59

I18n

• Qt Linguist Application

Page 60: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris60

I18n

• TopMod in French (thanks to Frenchy Pilou)

Page 61: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris61

I18n - Demo Video

Page 62: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris62

• Overview• Removing FLTK dependency• Redesigning the interface using Qt• New sub-object selection routines for vertices, edges, and faces• Consolidate old thesis research projects into the new version• Platform independence and portability• Internationalization• Heads up display• Creating an online community

Implementation and Results

Page 63: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris63

Heads Up Display

• Provide diagnostic information about the current state of the program• Current operating mode• Current selection filter/mask• Current extrusion mode• Current remeshing mode• Number of faces, vertices, and edges, and the genus• Number of selected faces, vertices, edges, and corners

• Rendered in OpenGL viewport using QPainter 2D painting widget• Also displays a miniature coordinate axis

Page 64: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris64

Implementation and Results

• Overview• Removing FLTK dependency• Redesigning the interface using Qt• New sub-object selection routines for vertices, edges, and faces• Consolidate old thesis research projects into the new version• Platform independence and portability• Internationalization• Heads up display• Creating an online community

Page 65: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris65

TopMod Web Community

• Editable user and developer documentation• Discussion forum• News blog• Image Gallery• Open source code repository• Quick and easy implementation / styling / updating etc...

Page 66: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris66

TopMod Web Community

• TopMod Wiki• Based on BlenderWiki and Blender Documentation Project• Built with open source mediawiki software (wikipedia)• editable by anyone

• Features• Embed and synchronize multiple 3d models with LiveGraphics3D plugin• Embed Quicktime video tutorials• Upload and share rendered images, OBJ, DLFL, and LG3d model files• Upload and share Python Scripts

Page 67: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris67

TopMod Web Community

• TopMod Wiki Screenshots and Demos

Page 68: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris68

TopMod Web Community

• TopMod Wiki Screenshots and Demos

Page 69: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris69

TopMod Web Community

• TopMod Wiki LiveGraphics3D demo

Page 70: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris70

TopMod Web Community

• TopMod Wiki LiveGraphics3D demo

Page 71: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris71

TopMod Web Community

• Doxygen Source Code Documentation • Automatically generated by reading through source code• Detects custom tags and keywords in the source code comments

• //!< \todo finish internationalization support for extrusion mode widgets

• /**

• * \brief this is a description

• * \@param this is a parameter

• **/

• Generates customizable HTML and PDF documentation.• Wrote a script to automate the process of generating and publishing docs

• runs doxygen with custom HTML header and footer• archives results• uploads and unpacks the files to the TopMod web server

Page 72: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris72

TopMod Web Community

• Doxygen Results

Page 73: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris73

TopMod Web Community

• Discussion forum• open source phpBB software• easy to style and maintain• MySQL database

Page 74: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris74

TopMod Web Community• News Blog• Open source Wordpress blog engine• Easy to install (5 minutes)• Easy to style maintain, PHP/MySQL

Page 75: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris75

TopMod Web Community

• Open source code repository• Google Code

• SVN repository• Wiki• bug reporting• release manager• scripted uploads• download tracker• google analytics• lots of storage space

Page 76: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris76

Video Tutorials

• http://topmod.blip.tv• 6431 views in 1.5 months

Page 77: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris77

Website Usage Statistics

• website began near the beginning of August 2007• first released on Google Code repository on Aug. 6th, 2007

Page 78: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris78

Google Analytics

• 9 months of statistics to date• 312,000 pageviews• 44,000 unique visits• 2,000 visits on October 1st• 52% of traffic from referring sites• 20% from search engines• 46% of visitors spent less than 10 seconds on the site• Average Time on Site - 5:20

Page 79: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris79

Google Analytics - October 1st in France

Page 80: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris80

Results - Polyloop Forum

• Cross posting by Frenchy Pilou

Page 81: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris81

Results - Meminesis

Page 82: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris82

Results - 3dvia.com

Page 83: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris83

Results - Mick

Page 84: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris84

Results - torolf

Page 85: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris85

Results - sjoo

Page 86: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris86

Results - torolf

Page 87: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris87

Results - sjoo

Page 88: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris88

Results - torolf

Page 89: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris89

Results - torolf

Page 90: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris90

Results - sjoo

Page 91: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris91

Results - Frenchy Pilou

Page 92: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris92

Results - torolf

Page 93: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris93

Results - sjoo

Page 94: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris94

Results - torolf

Page 95: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris95

Results - Frenchy Pilou

Page 96: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris96

Results - shadow

Page 97: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris97

Results - Stefan

Page 98: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris98

Results - Python Scripting - Diego

Page 99: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris99

Results - Trefoil Knot Tutorial by erik

Page 100: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris100

Results - User-Created Video Tutorials

• S. Johansen from Germany

QuickTime™ and aSorenson Video 3 decompressorare needed to see this picture.

Page 101: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris101

Results - User-Created Video Tutorials

• S. Johansen from Germany

QuickTime™ and aSorenson Video 3 decompressorare needed to see this picture.

Page 102: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris102

Results - User-Created Video Tutorials

• Frenchy Pilou produced a step-by-step interactive tutorial in French

Page 103: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris103

Results - Web Presence

Page 104: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris104

Results - Web Presence

Page 105: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris

Branding

Page 106: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris106

Advertising

• Official Banner on ZBrush France web community• Mail call spot in 3D World Magazine, CD in magazine packaging• Tags on Delicious / Flickr / 3DVia / DeviantArt / PushPullBar etc...

Page 107: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris107

Advertising - 3DWorld Magazine Issue 98

Page 108: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris108

Logo Design Competition

Page 109: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris109

T-Shirt Design Competition

Page 110: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris110

Overview

• Introduction

• Motivation

• Prior Work

• Implementation and Results

• Conclusion

• Future Work

• Acknowledgments

Page 111: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris111

Conclusion

• With this new user interface, TopMod users can• create high genus 2-manifold meshes much faster and more easily• customize the interface to allow for a better and faster workflow• interact with other TopMod users in a web-based community environment• view video and text-based tutorials online • suggest features and submit bugs and other issues• learn from and contribute to the TopMod documentation • download the TopMod source code• contribute to the TopMod source code in an open environment• share images and videos of work created in topmod

Page 112: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris112

Overview

• Introduction

• Motivation

• Prior Work

• Implementation and Results

• Conclusion

• Future Work

• Acknowledgments

Page 113: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris113

Future Work

• Collaboration through the TopMod Web Community• GPU Shading/Rendering• Wacom Tablet Support• Physically Based Camera• Multi-threaded support - ability to cancel operations• Progress Bar / Cancel Buttons• Poly editing features

• Move, rotate, scale multiple vertices, edges, and faces• Scene Graph support

• OpenSG or Maya-style DAG• Support multiple objects

• Modifier stack• Saved selection sets• PyQT custom scripted GUI elements• Support for 1-valence vertices - make TopMod crash less• More translation languages - Italian, Turkish, Catalan, Spanish, German etc...• Non-manifold mesh support / Generic Wireframe/Crust Algorithm• AJAX 3d or Flash 3d web interface• http://www.topmod3d.org/forum/

Page 114: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris114

• Based on requests from user forum• Voronoi / Delaunay • Organic Forms• Python Scripting Tutorials• Basket Weave Algorithm

New Features / Remeshing Schemes

Page 115: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris115

• TAMU Office of Technology Commercialization• Mays Business School• Center for New Ventures and Entrepreneurship• Marketing Department• MBA Ideas Competition• Research Valley Innovation Center• NSF/SBIR Grants• Texas Emerging Technology Fund

Commercialization Options

Page 116: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris116

Overview

• Introduction

• Motivation

• Prior Work

• Implementation and Results

• Conclusion

• Future Work

• Acknowledgments

Page 117: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris117

Acknowledgments• TopMod Contributors

• Lead Developer: Vinod Srinivasan• Concept/Theory: Ergun Akleman, Jianer Chen• Contributors: Esan Mandal, Eric Landreneau, Zeki Melek, Stuart Tett, Michael Stanley, Ozgur Gonen, Paul Edmundson, Fusun Eryoldas, Cansin Evrenosoglu, Xu Bei, Brian Barran

• Committee• Ergun Akleman (Chair)• Vinod Srinivasan• Dr. Jianer Chen

• Special Thanks To• Stuart Tett - lead designer of the TopMod Python Scripting Engine

Page 118: TopMod3d - Texas Open Source Symposium

Texas A&M Visualization Laboratory ©2007 dave morris118

Questions?