Junaio for developers – Adding 3D Components
Junaio for developers – Adding 3D Components
Junaio for developers – Adding 3D Components
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
<strong>Junaio</strong> <strong>for</strong> <strong>developers</strong> <strong>–</strong> <strong>Adding</strong> <strong>3D</strong> <strong>Components</strong>
What is junaio?<br />
Free mobile AR plat<strong>for</strong>m <strong>for</strong> iPhone and Android<br />
Smartphones<br />
Open API <strong>for</strong> developer to create and publish<br />
channels<br />
Location based in<strong>for</strong>mations and image recognition<br />
No experience with mobile applications<br />
programming needed<br />
server side scripting and XML<br />
Channels<br />
<strong>3D</strong> components<br />
<strong>Junaio</strong> GLUE channels<br />
Location based channels
What is a channel?<br />
Channels are a way of representing your specific<br />
application within junaio.<br />
Users can "tune into" your channel to see your<br />
in<strong>for</strong>mation or play your game.<br />
What do you need to know to create your own<br />
channel?<br />
Some modeling if you want to<br />
Some server-side programming<br />
Some XML<br />
No programming skills?<br />
Use the Channel Creator (slide #18)<br />
3
Channel Use Cases<br />
Channels can be anything, such as but not<br />
limited to:<br />
Game case<br />
Cinema channel and movie program<br />
Hotel reservations, train schedules<br />
Ticketing service, theatre and concert guide,<br />
museum guide<br />
Theme park virtual tours<br />
Restaurant and bar guides<br />
Auctions, shopping<br />
4
Getting started<br />
Become a developer and create<br />
your own channel<br />
Sign up to get an API key<br />
Set up your server<br />
(see Getting started)<br />
Register a channel here<br />
Test and submit your channel<br />
5
<strong>3D</strong> Model Examples<br />
Position <strong>3D</strong> models at locations and enrich the World.<br />
“GLUE“ <strong>3D</strong> in<strong>for</strong>mation onto the object itself (see junaio GLUE)<br />
Tag the World<br />
<strong>Junaio</strong> GLUE<br />
Trigger videos<br />
6
<strong>3D</strong> <strong>Components</strong> Outline<br />
Requirements<br />
Supported file <strong>for</strong>mats<br />
Create and convert your <strong>3D</strong> <strong>Components</strong><br />
Specifications Overview<br />
Place your <strong>3D</strong> model in junaio<br />
7
Requirements<br />
Requirements<br />
Some modelling skills<br />
<strong>3D</strong> Visualization program e.g. <strong>3D</strong> Studio Max starting from version 9.0 or Blender<br />
QTip MD2 exporter <strong>for</strong> <strong>3D</strong> Studio Max (license can be purchased at<br />
qtipplugin.com)<br />
Download Blender export script <strong>for</strong> MD2s on junaio website<br />
Blender<br />
<strong>3D</strong> Studio Max<br />
8
Supported Model Formats<br />
MD2<br />
Wavefront Object (.obj)<br />
Supports animated models with up to<br />
2048 vertices per model<br />
MD2 models cannot have different<br />
colors but textures.<br />
Exemplary model: 500 Vertices, 1000<br />
Polygons and a total frame number of<br />
200 (approx. 480 KB) of storage on<br />
the mobile device.<br />
The OBJ file <strong>for</strong>mat is a model <strong>for</strong>mat<br />
<strong>for</strong> static meshes.<br />
It supports multiple meshes with<br />
different textures and materials.<br />
Meshes can also have assigned<br />
different materials to their polygons.<br />
Use the OBJ <strong>for</strong>mat <strong>for</strong> high quality static objects<br />
and rely on the MD2 <strong>for</strong>mat <strong>for</strong> animated models.<br />
Download some example models from the junaio homepage<br />
9
<strong>3D</strong> Model Creation and Conversion<br />
<strong>3D</strong> Studio Max<br />
Create your model in 3d Studio Max<br />
Prepare <strong>for</strong> export<br />
Add texture to the model<br />
Create a frame list file<br />
Export model to MD2 / OBJ<br />
Create your <strong>3D</strong> model<br />
See the specification of the metaio Unifeye mobile SDK <strong>for</strong> detailed in<strong>for</strong>mation.<br />
10
<strong>3D</strong> Model Creation and Conversion<br />
Blender<br />
Model export from Blender<br />
Texture Baking in Blender<br />
Export to Wavefront OBJ / MD2<br />
Add textures to your model<br />
Export animations to MD2<br />
Link: Blender export script <strong>for</strong> MD2s<br />
11<br />
Export your model<br />
See the specification of the metaio Unifeye mobile SDK <strong>for</strong> detailed in<strong>for</strong>mation.
Model Sizes<br />
For visualization on the mobile<br />
phone it is important to verify<br />
reasonable model sizes.<br />
For <strong>3D</strong> Studio Max the unit can be<br />
set e.g. to millimeters or centimeters.<br />
When exporting your model, make<br />
sure to check the current unit settings.<br />
For Blender the units <strong>for</strong> modeling are<br />
usually millimeters.<br />
To use OBJs within junaio, please zip<br />
all files belonging to the model and<br />
place the zipped archive in the<br />
mainresource. The encrypted model<br />
must be called model.obj_enc<br />
Check the unit settings<br />
Assume one unit to be approx.<br />
1mm in real world<br />
12
Model Per<strong>for</strong>mance Improvements<br />
Lighting<br />
When using textures on models, try to bake the<br />
lighting conditions into your textures and disable<br />
lighting on your model afterwards.<br />
Flat Shading<br />
Activate Flat shading on your models.<br />
13
How to work with Movie Textures<br />
Creating a channel with a movie texture is as<br />
simple as creating any other junaio GLUE<br />
channel.<br />
The difference to any other <strong>3D</strong> model is very low,<br />
just keep in mind to convert the video files correctly<br />
On junaio.com you will find ready prepared md2<br />
models to play any of your movies with.<br />
A video will be directly glued to a GLUE pattern<br />
Links:<br />
Movie texture Tutorial<br />
How to convert my movie file to work with movie textures<br />
Assets being helpful<br />
14
Specifications Overview<br />
Low overall size due to network bandwidth<br />
Maximum amount of vertices: up to approx. 1000<br />
(recommended: 500) - the lower the better<br />
Texture size (max 512x512 256x256<br />
recommended) Only JPG file <strong>for</strong>mat supported<br />
To use models within junaio, they have to be<br />
encrypted. Use the Online Encrypter on the junaio<br />
website.<br />
Having encrypted your <strong>3D</strong> model, you can<br />
now enrich the world with your <strong>3D</strong> model.<br />
15
Place your <strong>3D</strong> model in junaio<br />
Similar to placing image, video or sound POIs<br />
you are able to position <strong>3D</strong> models at locations<br />
as well.<br />
MD2 Model<br />
model/md2<br />
[public_url]/model.md2_enc<br />
<br />
[public_url]/model_texture.[jpg/png]<br />
<br />
obj Model<br />
model/obj<br />
// This zip file holds the model.obj_enc, the reference<br />
material file plus the referenced texture<br />
[public_url]/example_obj.zip<br />
See the online documentation <strong>for</strong> further in<strong>for</strong>mation<br />
16
<strong>3D</strong> <strong>Components</strong> Example XML<br />
Additional tags are used, such as s <strong>for</strong> scale, <strong>for</strong>ce3d, customizations or<br />
behaviors.<br />
Following parameters control the display of your <strong>3D</strong> model:<br />
"<br />
<br />
<br />
//<strong>3D</strong> file <strong>for</strong>mat: md2 or obj<br />
[model/md2, model/obj]<br />
http://myURLcom/my<strong>3D</strong>model.md2_enc, /example_obj.zip<br />
//<strong>for</strong>ce3d determines whether the <strong>3D</strong> model will be rendered right away, or a default poi with a \"load <strong>3D</strong> Model\" in<br />
the description shall be shown<br />
true<br />
//Scale of the <strong>3D</strong> component<br />
1<br />
//Behaviour (Animation)<br />
<br />
<br />
//LENGTH: 0 <strong>for</strong> looping, amount of frames otherwise<br />
0<br />
17<br />
// NODE_ID: name of the animation in the <strong>3D</strong> model<br />
frame<br />
<br />
<br />
…<br />
<br />
";<br />
See the parameter documentation
junaio Channel Creator<br />
Create your own junaio channel<br />
without any programming skills<br />
- A simply and intuitive GUI will do<br />
all the work<br />
- You can create junaio GLUE<br />
channels, supporting <strong>3D</strong> models<br />
and video trigger functionality<br />
Add <strong>3D</strong> components<br />
- junaio Channel Creator<br />
18
Become a Certified Developer<br />
Join the growing junaio ® developer<br />
community<br />
Create unique apps<br />
Build a reputation in this expanding<br />
market<br />
You keep full control over your<br />
application and your data<br />
<strong>Junaio</strong>’s community provides<br />
interesting business opportunities<br />
You will be highly visible on our<br />
recommended Developer Network<br />
Our young and dedicated team is<br />
providing advice<br />
Certified Developers<br />
19
Benefits from junaio<br />
20<br />
Making Money with junaio ®<br />
<strong>Junaio</strong> ® is <strong>for</strong> free<br />
You can sign on to the Certified<br />
Developer Network free of charge<br />
Users can enjoy charge free content<br />
So where is there any money to be<br />
earned?<br />
Sell channels or content in the<br />
channel<br />
Location Based Advertisement in your<br />
channel<br />
Print advertising extended with<br />
multimedia or <strong>3D</strong> displays<br />
Indoor Navigation as a Business<br />
Opportunity
Who is behind junaio?<br />
junaio ® was created by metaio GmbH<br />
10 years research & development in<br />
Augmented Reality<br />
Locations: Munich, San Francisco,<br />
Seoul<br />
Marketing of AR solutions <strong>for</strong> industry,<br />
business and end-users<br />
21
Related Links<br />
Sign up at<br />
http://www.junaio.com/publisher<br />
Become a certified developer<br />
http://www.junaio.com/publisher/certifieddeveloper<br />
Documentation<br />
http://www.junaio.com/publisher/main<br />
Examples and Tutorials<br />
http://www.junaio.com/publisher/examples<br />
More Questions? Go to the Google Group <strong>for</strong> junaio<br />
<strong>developers</strong><br />
http://groups.google.com/group/junaio-developer<br />
22