Plug-in Software Developer Kit (SDK)



Similar documents
Programming 3D Applications with HTML5 and WebGL

JavaFX 3D Animation: Bringing Duke to Life

Surface and Volumetric Data Rendering and Visualization

Shader Model 3.0. Ashu Rege. NVIDIA Developer Technology Group

Introduction to Computer Graphics

LightWave IO.1 What s New

GUIDE TO POST-PROCESSING OF THE POINT CLOUD

A little code goes a long way Cross-platform game development with Lua. Ivan Beliy, Software Engineer

2: Introducing image synthesis. Some orientation how did we get here? Graphics system architecture Overview of OpenGL / GLU / GLUT

Our One-Year 3D Animation Program is a comprehensive training in 3D using Alias

Character Creation You can customize a character s look using Mixamo Fuse:

Anime Studio Debut vs. Pro

Blender addons ESRI Shapefile import/export and georeferenced raster import

4VATARS PROJECT. Standard avatar specification for content creation in RealXtend

Glass coloured glass may pick up on scan. Top right of screen tabs: these tabs will relocate lost windows.

How To Draw In Autocad

Introduction to Computer Graphics. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2012

Tutorial 13: Object Animation

How is EnSight Uniquely Suited to FLOW-3D Data?

VENTUZ ONLINE STORE CONCEPT V

Technical What s New. Autodesk Alias Product Line

Modelling 3D Avatar for Virtual Try on

Maxwell Render 1.5 complete list of new and enhanced features

Image Synthesis. Fur Rendering. computer graphics & visualization

COMPUTER GRAPHICS Computer Graphics

Lab7 : Putting Everything Together

Your CAD Programme. Virtually all 3D Rapid Prototyping machines and 3D Printers use the STL file format for input.

Silverlight for Windows Embedded Graphics and Rendering Pipeline 1

Why is pre-processing necessary? Overall steps of this workflow: Batch RAW to DNG with Adobe Digital Negative (DNG) Converter Software

Monash University Clayton s School of Information Technology CSE3313 Computer Graphics Sample Exam Questions 2007

Using HDR Panoramas. Dr Ryan Southall - School of Architecture & Design, University of Brighton.

Image Processing and Computer Graphics. Rendering Pipeline. Matthias Teschner. Computer Science Department University of Freiburg

GUI GRAPHICS AND USER INTERFACES. Welcome to GUI! Mechanics. Mihail Gaianu 26/02/2014 1

SAN DIEGO COMMUNITY COLLEGE DISTRICT MESA COLLEGE ASSOCIATE DEGREE COURSE OUTLINE

Advanced Diploma of Professional Game Development - Game Art and Animation (10343NAT)

Cross-Platform Game Development Best practices learned from Marmalade, Unreal, Unity, etc.

Recent Advances and Future Trends in Graphics Hardware. Michael Doggett Architect November 23, 2005

CAP VR WALKTHROUGH ENVIRONMENT: 3DS MAX INTEROPERABILITY BETWEEN PROGRAMS

3D Animation Graphic Designer

SkillsUSA 2014 Contest Projects 3-D Visualization and Animation

Intermediate Tutorials Modeling - Trees. 3d studio max. 3d studio max. Tree Modeling Matthew D'Onofrio Page 1 of 12

IT 386: 3D Modeling and Animation. Review Sheet. Notes from Professor Nersesian s IT 386: 3D Modeling and Animation course

Computer Applications in Textile Engineering. Computer Applications in Textile Engineering

Radeon HD 2900 and Geometry Generation. Michael Doggett

Develop Computer Animation

GPU Architecture. Michael Doggett ATI

VisIt Visualization Tool

Introduction to Computer Graphics

Questions and Answers

My Materials. In this tutorial, we ll examine the material settings for some simple common materials used in modeling.

A Simple Guide To Understanding 3D Scanning Technologies

Efficient Storage, Compression and Transmission

Workstation Applications for Windows. NVIDIA MAXtreme User s Guide

ArcGIS Viewer for Silverlight An Introduction

The Car Tutorial Part 1 Creating a Racing Game for Unity

Digital 3D Animation

Wednesday, March 30, 2011 GDC Jeremy Ernst. Fast and Efficient Facial Rigging(in Gears of War 3)

IronCAD s Hyper-Operability. IRONCAD TRANS Translators & Data Sharing

Q. Can an Exceptional3D monitor play back 2D content? A. Yes, Exceptional3D monitors can play back both 2D and specially formatted 3D content.

Mobile Game and App Development the Easy Way

Printing Guide. MapInfo Pro Version Contents:

Interactive Computer Graphics

About the Render Gallery

The Rocket Steam Locomotive - Animation

A technical overview of the Fuel3D system.

TI-Nspire Technology Version 3.2 Release Notes

COMP175: Computer Graphics. Lecture 1 Introduction and Display Technologies

MMGD0203 Multimedia Design MMGD0203 MULTIMEDIA DESIGN. Chapter 3 Graphics and Animations

Bronwen Grimes Technical Artist

MapInfo Professional Version Printing Guide

Information Technology Solutions

Visualizing Data: Scalable Interactivity

Creating Your Own 3D Models

Optimization of 3D Game Models

Computer Graphics on Mobile Devices VL SS ECTS

Using MuPAD and JavaView to Visualize Mathematics on the Internet

Amazing renderings of 3D data... in minutes.

Computer Graphics CS 543 Lecture 12 (Part 1) Curves. Prof Emmanuel Agu. Computer Science Dept. Worcester Polytechnic Institute (WPI)

PTC Creo Elements/Direct Comparison. Modeling Version

Autodesk Design Visualization for Architects. Every Design Has a Story.

Game Development in Android Disgruntled Rats LLC. Sean Godinez Brian Morgan Michael Boldischar

JavaFX Session Agenda

MIDAS. Event Log Viewer User s Guide. Part Number MN/MID-EVLOG.IOM Revision 0

HIGH AND LOW RESOLUTION TEXTURED MODELS OF COMPLEX ARCHITECTURAL SURFACES

Feature Comparison of PTC Creo View MCAD. Product Suite. Topic Sheet. Page 1 of 6 Feature Comparison of PTC Creo View MCAD Product Suite

GPU Profiling with AMD CodeXL

Creating 2D Drawings from 3D AutoCAD Models

Certificate Courses in Animation

Autodesk 3ds Max 2010 Boot Camp FAQ

TEACHING GRAPHICS PROGRAMMING ON MOBILE DEVICES

Pro/ENGINEER Wildfire 4.0 Basic Design

ZWCAD Professional vs. Standard vs. Academic

A Pipeline From COLLADA to WebGL for Skeletal Animation

Deferred Shading & Screen Space Effects

Computer Animation and Visualisation. Lecture 1. Introduction

AMD RenderMonkey IDE Version 1.71

QNX Software Development Platform 6.6. Screen Graphics Subsystem Developer's Guide

Lecture 3 Mobile App Development (Android, ios, BlackBerry, Windows Mobile) <lecturer, date>

Getting Started with CodeXL

Transcription:

Updated February 2, 2012

2 modo 601 Plug-in Development Kit for PC and Mac The modo 601 Plug-in Software Development Kit provides a set of Application Programming Interfaces (APIs) and numerous source code samples that enable developers to read and write modo 601 scene, image, and movie files, introduce new commands and item types into modo, as well as add plug-in scripting support (with an example Lua interpreter). The SDK is based on COM, with C++ wrappers for many of the published APIs, and is available for both Mac OS X and Windows 32 bit and 64 bit versions of modo 601. What you can do with the SDK Create new Component shaders (similar to the Skin Shader in modo 601) for use in the modo Shader Tree. Build procedural geometry Plug-ins that create geometry in modo parametrically, and also be converted to a mesh. Create your own Image monitors (similar to the Histogram image monitor in modo 601) that display specialized types of image analysis. Build new viewport Overlays (similar to the Safe Area overlay) in modo 601. Create new implicit surface items (similar to the Blob items in modo 601). Build new Deformers for use in modo. Create new Volume items (similar to the Ground Plane item) in modo 601. Develop procedural textures which can be used as keyframed, multi-channel textures in the modo Shader Tree. Create a custom script interpreter for Lua or other programming languages. Develop new tool Plug-ins to extend the modo tool set. Create new Channel modifiers that can be placed into the Schematic Viewport in modo. Build new Color Model Plug-ins that can enhance the Color Picker in modo. Create time-based Image items for use in modo You can create Loaders or Savers for scenes or images, and savers for movies.

3 Loaders implement a recognition method that scans the file to determine if it s of a known type, and a load method which allows the loader to import data from the file into an object (scene or image) provided by modo. Scene loaders can import vertices and polygons as dynamic or static (trisurf) meshes. Static meshes have lower memory requirements and therefore enable loading larger scenes. Additional API support is provided to access polygonal faces, subdivision surfaces, curves of various types, patches, and text polygons. Plug-ins can access user preference settings to control their behavior. You can also use modo forms to design your Plug-in s preferences panel user interface. Plug-ins can also be delivered as packages, using the new.lpk file format, which enables delivering a set of files as a ZIP archive, which includes a manifest index file that controls where each file in the package is installed, via drag-n-drop onto the application. Savers implement a verify method which can display information or warnings about the chosen file format, and a save method, which reads the state of a scene or image object and writes that to the file. With API calls to the SDK you can access any parameter known to modo about the scene. Surface normals are supported, both per-vertex and per-polygon. The file I/O support in the SDK provides automatic triangulation APIs for scene savers, so that models can be saved as triangles without first manually freezing the meshes. Developers have access to topology information (e.g., what edges are connected to a given edge). If a new image saver is registered, then that format will appear in the Save As dialog for saving renders. You can also define your own layered image saver. The modo renderer can generate a depth buffer and other effect buffers, which can be saved as an image or as part of a layered image.

4 What s included in the SDK Header files and source code to build the example plugins and the C++ wrappers. For Windows developers, project files for the SDK samples are provided for Microsoft Visual Studio 2010 and 2008. For Mac OS X developers, the SDK also provides an Xcode project file. Sample code and detailed documentation for LXO file importers and exporters. Scene Loaders and Savers for COLLADA Digital Asset Exchange (.DAE), Autodesk FBX (.FBX), Wavefront Object (.OBJ), and VideoScape (.GEO) files. HSV and Kelvin Color Model samples. Sample code for Component shaders. A cel edges Shader is included as a top level shader example, providing a wide range of controls over diffuse, specular and reflection bands plus the ability to Draw Edges in a separate material. A Skin material shader is provided, showing use of displacement. Additionally, sample halftone and hair material shaders are present. An implicit surface example is provided. A Volume item example that implements a Ground Plane Volume item is provided. The new Volume API uses two shaders; one for density and another one for volume attributes. Scene savers for HPGL Plotter (.plt) files. Sample tool Plug-ins include the Arc, Seashell, and Spikey tools. Image loaders and savers for Portable Network Graphics (.PNG) and simple raw (.RAW) files. Sample gear generator plug-in is provided with numerous option for gear spacing, spoke placement etc. In addition to the gear item, there s also are orb and gasket examples that show how to procedurally create simple shapes. Movie savers for Apple QuickTime (.MOV) and Windows Media (.WMV) files. A script interpreter for the Lua programming language. An example VertValue plugin command is included that reads and sets vertex map values. The Histogram is provided as a sample Image Monitor Plug-in. A sample deformer (morph deformer) is provided which provides some basic settings for deforming an item in various ways. The COLLADA, Wavefront Object, and PNG plug-ins all provide sample UI forms that appear in the Preferences window of modo after they are installed, this lets users pick how they want certain parameters to be handled by the plug-in. Many sample plug-ins are provided in C++, with liberal open source licensing that allows developers to use the code in their own applications and products.

5 Applications and Benefits Export data from modo into the rest of your pipeline or tool suite (e.g. game engine). Control how modo data looks to your application, for seamless downstream use in your asset pipeline. Dump the contents of an LXO file into human-readable form. Import data from another application into modo. Read a proprietary in-house format or tackle an industry-standard format. Copy the contents of one LXO to another, applying custom operations as needed. Introduce new procedural textures into modo like pudding or boiling mud. Add new Commands to modo that execute native C++based actions. Introduce new types of geometry into modo like nuts and bolts and screws. Create new tools for modo users that by provide new ways to create and edit geometry. Add new Replicator point generators to modo. For example you could create a condensation plug-in that places replicators as you d see on a sweating drinking glass. Design innovative new ways for users to pick colors in modo.