BIOLOGICAL ORGANISM
SIMULATION USING
PROCEDURAL GROWTH
“ORGANIMO1.0”
Submitted By: Supervisor:
Shivank Gupta (10103607) Pr...
INTRODUCTION
The video game industry is the economic sector involved with the
development, marketing and sales of video ga...
PROBLEM STATEMENT
Design a real-time system for growing plant organisms in Unity 3D game
engine. The whole life cycle of t...
NOVELTY/BENEFITS
 Procedural Growth brings these advantages-
 The game variation is in relation to real world, where uni...
 Games can be used to an advantage of:
 Educating children and increasing their learning many folds.
 Games encourage a...
DESCRIPTION OF PROJECT
 Product Perspective:
The objective of this project is to create a tool/library for unity
develope...
 Software Interface: Windows or mac operating system would be able to
run the tools. Developed mobile application can run...
 User characteristics:
 Education wise: Users should have basic knowledge of Unity3D.
 No pre-experience is required. O...
FUNCTIONAL REQUIREMENTS
Define the fundamental actions that must take place in the software in
accepting and processing th...
NON-FUNCTIONAL REQUIREMENTS
Type of Non-Functional
requirement
Explanation Status
1. Product requirements
 Efficiency Spe...
 Usability Ease-of-use requirements address the
factors that constitute the capacity of
the software to be understood, le...
IMPLEMENTATION ISSUES AND DETAILS
 Implementation Issues:
 Some issues related to Graphic card.
 Orientation of Game Ob...
Under Water scene:
Description: In this scene, a small pond/lake type structure is
added in middle of small and medium si...
 Radiosity Algorithm scene:
Description: In this scene a basic tree and a light source like sun is shown.
The tree’s bran...
 Scripts:
Procedural growth script: Applied to the Basic procedural tree in the
dungeon maze scene.
Underwater Effects ...
RISK ANALYSIS AND MITIGATION PLAN
Risk
ID
Class Class
Descriptio
n of Risk
Risk Area Probability Impact RE Mitigation Miti...
Risk
ID
Class Class
Descriptio
n of Risk
Risk Area Probability Impact RE Mitigation Mitigation
Plan
Contingenc
y plan
Risk...
TESTING
 Testing plan
Type of Test Will it be performed? EXPLANATIONS Software
Component
Requirement
Testing
Yes
Yes Requ...
Type of Test Will it be performed? EXPLANATIONS Software
Component
Unit Yes
Testing by which individual
units of source co...
 Test Environment:
 Software Items:
Unity3d-Cross platform game engine
MonoDevelop- Open source integrated development...
Findings
 L system: An L-system or Lindenmayer system is a parallel rewriting
system and a type of formal grammar.
 Spac...
Conclusion
We design a real-time system for growing plant organisms in Unity 3D
game engine. The whole life cycle of the p...
Upcoming SlideShare
Loading in …5
×

Biological organism simulation using procedural growth "Organimo 1.0"

750 views

Published on

Designing a real-time system for growing plant organisms in Unity 3D game engine. The whole life cycle of the plant from the seed level to full growth level shall be shown. Moreover, the growth shown will be in sync with the day and night cycle. Different Plant types covered are basic tree, creeper plants, vines, under water plants, etc. Moreover study on simple Radiosity algorithm is also made. Small game or scenes in Unity3D are used to demonstrate the growth of such organisms.

Published in: Engineering
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
750
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Biological organism simulation using procedural growth "Organimo 1.0"

  1. 1. BIOLOGICAL ORGANISM SIMULATION USING PROCEDURAL GROWTH “ORGANIMO1.0” Submitted By: Supervisor: Shivank Gupta (10103607) Prof. Sanjay Goel Devyani Singh (10104688) Jaypee Institute of Information Technology
  2. 2. INTRODUCTION The video game industry is the economic sector involved with the development, marketing and sales of video games. Organimo is all about mixing education and biology with gaming.it is a collection of game objects which would virtually simulate like different biological components and can be used in different game scenarios.it can be used to introduce a new kind of genre in video game industry. Gaming industry has seen the vast usage of mechanics and physics in different genres. Soon biology will be required to develop more complex games. Our project is a start to such a genre in which developer can use our game objects to develop a gameplay based on simulating biological aspects of life. We will make use of Unity 3D game engine to develop our game.
  3. 3. PROBLEM STATEMENT Design a real-time system for growing plant organisms in Unity 3D game engine. The whole life cycle of the plant from the seed level to full growth level shall be shown. Moreover, the growth shown will be in sync with the day and night cycle. Different Plant types covered are basic tree, creeper plants, vines, under water plants, etc. Moreover study on simple Radiosity algorithm is also made. Small game or scenes in Unity3D are used to demonstrate the growth of such organisms.
  4. 4. NOVELTY/BENEFITS  Procedural Growth brings these advantages-  The game variation is in relation to real world, where unique objects exist. The computer can do the work (possibly during play).  The object can have huge variation, much larger than any manually designed game objects could possibly be.  The world (or at least parts of it) can be regenerated for each game, potentially increasing replay value, since the player will always have something new to discover.  User-generated content. General users of games don’t have the time or skill it takes to produce modern game-quality content, but if a procedural system is built to take only a few intuitive inputs, it becomes quick and easy to use by anyone.  Programmer-generated content. If you’re a lone programmer making a game, or if you can’t afford enough artists to build the scale of game you’re making, why not generate content using functions that can generate unlimited content from simple inputs such as random seeds?
  5. 5.  Games can be used to an advantage of:  Educating children and increasing their learning many folds.  Games encourage active learning, interaction between multiple people, encourages team-work, and also provide a free environment that allows for skill enhancement.  A life simulation game :  Can revolve around "individuals and relationships, or it could be a simulation of an ecosystem in which the player lives or controls one or more virtual life forms.  About "maintaining and growing a manageable population of organisms", where players are given the power to control the lives of autonomous creatures or people.  Artificial life games are related to computer science research in artificial life. But "because they're intended for entertainment rather than research, commercial A-life games implement only a subset of what A-life research investigates."
  6. 6. DESCRIPTION OF PROJECT  Product Perspective: The objective of this project is to create a tool/library for unity developers which will help them to simulate biological plant organism kind of behavior. This tool is not independent. It is dependent on Unity 3D platform to run. It is self-sustained.  System Interface: Cross platform they can be used to develop games on ios android windows xbox or wii.  User Interface: The UI consists of the Unity game play screen. The screen displays the stage opened. This screen can change according to scenes provided.  Hardware Interface: Can be web based or system based. It is hosted by Unity3D.  Communication Interface (I/O devices): Input: Keyboard and mouse. Output: Screen. Everything saved in the computer memory.
  7. 7.  Software Interface: Windows or mac operating system would be able to run the tools. Developed mobile application can run on android or ios.  Memory: The size of the memory depends on the size of the game objects or material imported in the project.  Operations: The application requires elementary operation of input and output.  Site adaption: No additional site adaptation is required as it is a stand- alone application.  Product functions:  Creating different varieties/types of plant organisms by procedural growth method.  Creating a tool so that these can be easily used in Unity 3D.  Creating an interactive UI to showcase the different plant models.  Can be used as means of educating children. It can form a part of education based games and help in providing learning via fun methods.
  8. 8.  User characteristics:  Education wise: Users should have basic knowledge of Unity3D.  No pre-experience is required. Only knowledge of Unity3D software is required.  Technical expertise wise basic handling of keyboard and mouse may be required.  Apportioning of requirements:  Radiosity algorithm incorporated in the tool for all plant models. Just now used only for simple tree.  More different varieties of plant organisms may be included in the tool.
  9. 9. FUNCTIONAL REQUIREMENTS Define the fundamental actions that must take place in the software in accepting and processing the inputs and in processing and generating the outputs. Game objects can be imported in main project.  Objects can be transformed, able to change its local rotation local position.  Objects should have physics components like rigid body box collider.  If player is in front of the object it is triggered and start growing.  If player reaches on the end point game is over.  Player is not able to cross grown object.  Other objects showcase attributes according to their types. Like creeper plant climbs up the wall and under water plant grows inside the water.  Radiance algorithm is used. Object grows faster where it is closest to the light source.
  10. 10. NON-FUNCTIONAL REQUIREMENTS Type of Non-Functional requirement Explanation Status 1. Product requirements  Efficiency Specifies how well the software utilizes scarce resources: CPU cycles, disk space, memory, bandwidth, etc. Much utilization of resources are not needed. A dual core processor (or above) should be sufficient.  Portability Portability specifies the ease with which the software can be installed on all necessary platforms, and the platforms on which it is expected to run. Being a multiplayer game, it should be portable enough so that it can be installed on any system.
  11. 11.  Usability Ease-of-use requirements address the factors that constitute the capacity of the software to be understood, learned, and used by its intended users. The software designing should be done for lame user and learning time need not to be calculated.  Performance The performance constraints specify the timing characteristics of the software i.e. response time and processing time. Response time should be 30- 40 seconds. The time to process should be 4-5 minutes. 2. External requirements  Privacy The privacy of the user is the most important priority. The private information of one user should not be accessed to others. Our software does not indulge in private information of the user. Hence, it is not required.  Safety System use shall not cause any harm to human users. Its not required since system involved is merely a processor.  Security System should be securable enough so that user cannot hack or harm the system. Login facility is sufficient as security.
  12. 12. IMPLEMENTATION ISSUES AND DETAILS  Implementation Issues:  Some issues related to Graphic card.  Orientation of Game Objects.  Interaction with different Game Objects.  Real time incorporation issue.  Heavy computing brings load on laptop/computer.  Algorithms used in following Modules:  a.) Scenes: Dungeon Maze scene: Description: An interactive scene is created depicting a dungeon maze. The scene environment is lighted with flames placed at regular distance on the dungeon walls. The skybox used is of a night time to add to the eerie effect. God of war sound track is added to the background. Algorithm: Procedural Growth using L-System, Golden Ratio
  13. 13. Under Water scene: Description: In this scene, a small pond/lake type structure is added in middle of small and medium sized hills. The player is given a platform to jump inside the lake. The bubble effect of the player inside the lake is added to give authenticity to the game. The underwater effect is given by adding fog and many daylight water game objects. The skybox added is sunny day light. A soundtrack is added at the background to enhance the effects of the scene. Algorithm: Procedural Growth using L-System, Golden Ratio Creeper plant scene: Description: This scene is a simple one. To depict the climbing properties of the creeper plant we are adding a wall i.e. a cube with brick material texture on it. Algorithm: Procedural Growth using L-System, Golden Ratio Vine plant scene: Description: In this scene a vine is shown. The vine grows on starting the scene. It is a simple scene only used to show the growth of vine plant. Algorithm: Procedural Growth using L-System, Golden Ratio
  14. 14.  Radiosity Algorithm scene: Description: In this scene a basic tree and a light source like sun is shown. The tree’s branches grows faster when the intensity of light falling on that tree branch is more. Algorithm: Growth using Radiance Algorithm, Golden Ratio  b.) Game objects: Basic Procedural tree: This is the procedural growth of the tree on the surface. Underwater Procedural tree: This is procedural growth of the tree underwater. Creeper plant: This is the creeper plant. Vine plant: This is the vine plant. Sun: This is the light source. Tree: This is the tree on which radiosity is applied.
  15. 15.  Scripts: Procedural growth script: Applied to the Basic procedural tree in the dungeon maze scene. Underwater Effects script: Applied to Underwater Procedural tree in the Under Water scene. Creeper script: Applied to Creeper plant in the creeper plant scene. Vine script: Applied to Vine plant in the vine plant scene. Sun script: Applied to the sun (light source) in the Radiance algorithm scene. Game Time1 script: Applied to sun (light source) and scene in the Radiance Algorithm scene. Growth script: Applied to the tree in the radiance algorithm scene.
  16. 16. RISK ANALYSIS AND MITIGATION PLAN Risk ID Class Class Descriptio n of Risk Risk Area Probability Impact RE Mitigation Mitigation Plan Contingenc y plan Risk Avoidance Activity 1 Product Product Time constraint issue Reliability Medium (3) High (5) 15 Y By applying more reliable algorithms . Fast PC and by applying more reliable algorithms. Use small and efficient codes. 2 Program Input devices Issue Hardware High (5) High (5) 25 Y By checking of all the input devices Keeping space input devices Checking before hand
  17. 17. Risk ID Class Class Descriptio n of Risk Risk Area Probability Impact RE Mitigation Mitigation Plan Contingenc y plan Risk Avoidance Activity 3 System Exceptional halt of the program. Hardware Medium (3) High (5) 15 N NA High speed GPU Use testing to time and keep record of breakpoint s 4 Program Different versions of software Human factor High (5) Medium (3) 15 Y Develop UIs for other platforms NA NA Issue special instructions 5 Program Code Error Maintain- ability Low (1) High (5) 5 N NA Go through code or use testing software. Use testing to time and keep record of breakpoint s
  18. 18. TESTING  Testing plan Type of Test Will it be performed? EXPLANATIONS Software Component Requirement Testing Yes Yes Requirement testing is testing the requirements whether they are feasible or not. Because a project depends on a number of factors like time, resources etc. Before we start working on a project it’s important to test these requirements. Manual work, need to plan out all the software requirements, time needed to develop, technology to be used etc.
  19. 19. Type of Test Will it be performed? EXPLANATIONS Software Component Unit Yes Testing by which individual units of source code are tested to determine if they are fit for use. All major codes like creating procedural primitives etc. and Libraries involved like openGL etc. Integration Yes Testing wherein individual Algorithm modules are combined and tested as a group. Compiling various codes and testing them as one single code. Performance Yes Testing to evaluate the input where the best and most optimal output is yielded by the system. Works best for simple procedural growth tress with no. of generations less than 30. Stress Yes Testing beyond normal operational capacity. Complex meshes such as sphere with more than 100 vertices. Security Yes Testing to determine that a system protects data and maintains functionality as intended. Keeping the project password protected to ensure network security.
  20. 20.  Test Environment:  Software Items: Unity3d-Cross platform game engine MonoDevelop- Open source integrated development environment. Operating System(Windows 7 ultimate)  Hardware Items: The only hardware is computer systems which will act as server, data center and front end for user. PC 1.6 Ghz or higher. 512 Mb Ram or higher. 5 GB disc Space or higher. Internet Access. Operating System - Win98 or higher  Test team Members: Shivank Gupta , Devyani Singh  Technique for testing: Black Box testing and White Box testing
  21. 21. Findings  L system: An L-system or Lindenmayer system is a parallel rewriting system and a type of formal grammar.  Space Colonization: The cornerstone of the proposed method is the space colonization algorithm which treats competition for space as the key factor determining the branching structure of trees.  Golden Ration: In mathematics, two quantities are in the golden ratio if their ratio is the same as the ratio of their sum to the larger of the two quantities, i.e. their maximum.  Radiosity: Radiosity is a global illumination algorithm used in 3D computer graphics rendering. Radiosity is an application of the finite element method to solving the rendering equation for scenes with surfaces that reflect light diffusely.
  22. 22. Conclusion We design a real-time system for growing plant organisms in Unity 3D game engine. The whole life cycle of the plant from the seed level to full growth level shall be shown. Moreover, the growth shown will be in sync with the day and night cycle. The growth shall be maximum during the day and minimum during the night. All the data of the plants thus gathered can be later used for other kinds of plant organisms.

×