Click here to Skip to main content
12,545,840 members (57,672 online)
Click here to Skip to main content
Add your own
alternative version

Tagged as


1 bookmarked


, 4 Sep 2013 CPOL
Rate this:
Please Sign up or sign in to vote.
an app that provides 3D models of Human SpaceFlights

Editorial Note

This article is an entry in our AppInnovation Contest. Articles in this sub-section are not required to be full articles so care should be taken when voting.


Platform Targeting :-Tablet

Category :-Education  

App Name:-Space Exploration 3D

My Game Demo video 

Check the video to see how the app behaves:-


Overview of the Application:-

This app idea came in my mind as i was very keen on Space Exploration from my childhood days. I was so fascinated by the books that were available those days that  when we use to open the pages it used to give us 3D view of the pages without  glasses where the pages used to interpret the 3D effects. Now i thought of building  an app that shows different spaceflight missions that have taken place in yester years. It's a tribute from my side to those glory days of Space Exploration that is now at its peak. It will use Gestures such as PAN,TOUCH,ROTATE etc to give a good GUI experience. This is an innovative and yet engaging way for education as it will throw light into the Space Flight missions that have happened in reality where an end user will be able to interact with application with gestures. It will be a very good to carry with Lenovo tab where you can demonstrate the models in a Big HD screen using the built in HDMI port. It will be very handy for explanations in Lecture Labs regarding Space Explorations as  well as kids to give exposure to education in an innovative way. 

The models that will be there in the app

The project view of Unity screenshot


The different scenes in Unity

The Screenshots of the app

Screenshot 1



ScreenShot 4








Approach Taken for Development & Description of intended used of the app:-

I intend to develop 3D interactive  model where the different space flights are to be included.

I had certain exposure Unity 3D engine and I intent to use it here. It will be building  a GUI based app

where user will interact with the screens using Touch. I will be made using the Built in Functions in

Unity to enable Touch on a device. 





4)Stylus Digital Pen Supported  

5)Use HDMI ports for better presentation at Big HD screens.


When we switch from one object to another for demonstration you need to press the Remove all recognizer button and move to next object to get the gestures working.When you move to next object  press the add tap recognizer and then click on say add one rotation recognizer to get the gestures going remember before moving into next object  scenario release the gesture by pressing the Remove all recognizer button and then move to next slide.

I trimmed my demo down to 13.5 mb(upload limit is10mb) but still unable to upload it.My first demo consists of 5 space flight models,i will update all later on

The Whole process of taking the app to Intel AppUp store:-I will have to add Digital Signature on the app by using the MSI Tool. I will Package the app using Advanced Installer.

The flow shown in Diagram




Using the code

I am giving a sample view of the code that I have written,the programming approach uses C# script

Detailed Description step to step will be provided later


Code for creating GUI box as well as Loading scenes in Unity


// using UnityEngine;
using System.Collections;

public class GUITest : MonoBehaviour {

	void OnGUI () {
		// Make a background box
		GUI.Box(new Rect(10,10,100,90), "Loader Menu");

		// Make the first button. If it is pressed, Application.Loadlevel (1) will be executed
		if(GUI.Button(new Rect(20,40,80,20), "Level 1")) {

		// Make the second button.
		if(GUI.Button(new Rect(20,70,80,20), "Level 2")) {


Providing spinning effect

//using UnityEngine;
using System.Collections;

public class spin : MonoBehaviour {
	public float speed = 10f;

	// Use this for initialization
	void Start () {
	// Update is called once per frame
	void Update () {
		transform.Rotate(Vector3.left, speed * Time.deltaTime);

as the speed variable is public we can adjust the value at the game scenes

Using Input.Touch you can implement touch in unity C# script

//using UnityEngine;
using System.Collections;

public class Example : MonoBehaviour {
    void Update() {
        int fingerCount = 0;
        foreach (Touch touch in Input.touches) {
            if (touch.phase != TouchPhase.Ended && touch.phase != TouchPhase.Canceled)
        if (fingerCount > 0)
            print("User has " + fingerCount + " finger(s) touching the screen");

Some Standard Descriptions that i have used in Unity 3d

Update for the project

I am just updating the status of the project right now. I have added other models to the project.Following are the updates


International Space Station

 The Space station Model you are able to Interact with the 3D Structure Pan and rotate it.

The Current View of the project with buttons showing the models.


This was one of the most important mission Shuttle it shows 3D view of the structure and you are able to interact with gestures

Saturn V  Shuttle

This model shows the interaction with the 3D structure as the object keeps on rotating.Also shows Saturn V data as text for information purpose.

 Astronaut Model

This is the model where in this structure you can interact freely.



International Space Station 

Another View from the main app

 ISS 2

General View of the advanced Space Station ,you are able to interact with the mode pan and rotate and check

 Discovery Shuttle

Good View of interactive Space Flight as well as Astronaut you can interact with it.

More Updates to Come  

I am working on a Quiz model where people will get interactive Questions and Answers related to Space Exploration.More facts and fiqures associated to help educate others.Accelerometer Sensor usage.

A quick code snippet on how the scenes are organized in Unity using C# script

if( GUILayout.Button( "APPOLO LUNAR" ) )
		if( GUILayout.Button( "FREEDOM 7" ) )
		if( GUILayout.Button( "JUPITER-C" ) )
		if( GUILayout.Button( "GEMINI" ) )
		if( GUILayout.Button( "APPOLO SOYUZ" ) )
		if( GUILayout.Button( "SATURN -V" ) )
		if( GUILayout.Button( "GEMINI CAPSULE" ) )
		if( GUILayout.Button( "JUPITER-C" ) )
		if( GUILayout.Button( "CRAWLER" ) )
		if( GUILayout.Button( "EMU" ) )
		if( GUILayout.Button( "EMU1" ) )
		if( GUILayout.Button( "ISS" ) )
		if( GUILayout.Button( "DISCOVERY" ) )
		if( GUILayout.Button( "EXIT" ) )


 Here is how the project scenes look in Unity.

 Now the New Video of the app with added Models shown below  


A Must app for Tablet


1)High interactivity with Touch

2)Pan,Tap gesture included

3)A great way for presentation of 3D Spaceflight models

4)Quizzes and Information about Human Spaceflight

5)Unity Facebook SDK integration for sharing information across or adding new facts

6)Accelerometer Support(in progress)

7)Good GUI with 3D models

What is Vector3? 

Representation of 3D vectors and points.

This structure is used throughout Unity to pass 3D positions and directions around. It also contains functions for doing common vector operations.

Besides the functions listed below, other classes can be used to manipulate vectors and points as well.


GUI Layout

The GUILayout class is the interface for Unity gui with automatic layout.



Structure describing status of a finger touching the screen.



The position delta since last change.


Amount of time passed since last change.


The unique index for touch.


Describes the phase of the touch.


The position of the touch.


Number of taps.      

 Closing an application in Unity

//if (GUI.Button (Rect (130,40,80,20), "EXIT")) {

 Why Unity?

Unity is a great game engine that has got lot of specifics to develop a game or app and deploy it to different platforms.Code once and get it to Windows,Mac,Linux,Android etc.I am into software development close to a year and i have been using Unity for the last 7 months its kind of cool tool to start with

Good Resource for Unity


Points of Interest

Spaceflight missions that interest me always and this app is a tribute to those glorious space flight missions


Demo Created v1.0 Tried uploading but failed ,as file size more than 10mb(15.9mb approx) waiting for alternate ways as mentioned by Chris


This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


About the Author

Abhishek Nandy
Software Developer
India India
I am into software Development for less than a year and i have participated in 2 contests here at Codeproject:-Intel App Innovation Contest 2012 and Windows Azure Developer Challenge and been finalist at App Innovation contest App Submission award winner as well won two spot prizes for Azure Developer Challenge.I am also a finalist at Intel Perceptual Challenge Stage 2 with 6 entries nominated.I also won 2nd prize for Ultrabook article contest from CodeProject

Microsoft MVA Fast Track Challenge Global Winner.
Ocutag App Challenge 2013 Finalist.

My work at Intel AppUp Store:-


You may also be interested in...

Comments and Discussions

QuestionHow's app development going? Will you be submitting on time? Pin
Kevin Priddle23-Oct-13 8:36
staffKevin Priddle23-Oct-13 8:36 
AnswerRe: How's app development going? Will you be submitting on time? Pin
Abhishek Nandy29-Oct-13 8:29
professionalAbhishek Nandy29-Oct-13 8:29 
AdminThanks for entering the Intel AIC 2013! Pin
Kevin Priddle15-Aug-13 11:31
staffKevin Priddle15-Aug-13 11:31 
GeneralRe: Thanks for entering the Intel AIC 2013! Pin
Abhishek Nandy15-Aug-13 18:15
professionalAbhishek Nandy15-Aug-13 18:15 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

| Advertise | Privacy | Terms of Use | Mobile
Web01 | 2.8.161018.1 | Last Updated 4 Sep 2013
Article Copyright 2013 by Abhishek Nandy
Everything else Copyright © CodeProject, 1999-2016
Layout: fixed | fluid