Difference between revisions of "Team Mutalisk"

From CDOT Wiki
Jump to: navigation, search
(Proposal)
(Trunk Status: Added importing meshes message.)
 
(21 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 
{{GAM666/DPS901 Index | 20103}}
 
{{GAM666/DPS901 Index | 20103}}
 
= Mutalisk =
 
= Mutalisk =
 +
== Project Marking Percentage ==
 +
<big>
 +
Group work:      60%        (25 <= xx <= 50)
 +
Individual work: 40% +      (50 <= xx <= 75)
 +
-------------------------
 +
Total          100%
 +
</big>
 +
 
== Repository Path ==
 
== Repository Path ==
  
Line 7: Line 15:
 
== Trunk Status ==
 
== Trunk Status ==
  
committed by fardad
+
committed by Hasan
  
= Team Memebers =
+
== Messages ==
 +
=== UPDATE: Nov. 5, Importing meshes from a file now ready ===
 +
 
 +
Mesh importing has now been implemented through the CreateMesh() method. To use it, '''#include "iMesh.h"''' and call '''CreateMesh("filename.obj", Colour somecolour);'''
 +
 
 +
'''CreateMesh:''' This function creates and returns the address of a new iObject object (in reality a Mesh object, descending from Object). The model file is expected to reside in resources/models (resources resides in the same directory as 15-Controller). Like other objects, set the Colour to whatever you want to multiply the model's texture by that colour.
 +
 
 +
--Hasan
 +
 
 +
= Team Members =
 
{| border="1" cellpadding="5"
 
{| border="1" cellpadding="5"
  
Line 15: Line 32:
 
|-
 
|-
 
| Hughes || Joseph || jphughes || - || CloudScorpion || -  
 
| Hughes || Joseph || jphughes || - || CloudScorpion || -  
|-
 
| Tessema ||Iyosias||istessema || - || iyosias|| -
 
 
|-
 
|-
 
| Alexander || Ryan || rjalexander || - || tdot || -  
 
| Alexander || Ryan || rjalexander || - || tdot || -  
Line 22: Line 37:
 
| Kamal-Al-Deen || Hasan || hkamal-al-deen || [http://orbitalstation.wordpress.com The Orbital Station] || northWind || 416NUMNUMNUM909NUMNUMNUM7925
 
| Kamal-Al-Deen || Hasan || hkamal-al-deen || [http://orbitalstation.wordpress.com The Orbital Station] || northWind || 416NUMNUMNUM909NUMNUMNUM7925
 
|-
 
|-
| Gorscak || Ljubomir || gljubomir ||  [http://ljubomirgorscak.blogspot.com Ljubomir's Blog] || ljubo || (647) 328-4807
+
| Gorscak || Ljubomir || gljubomir ||  [http://ljubomirgorscak.blogspot.com Ljubomir's Blog] || ljubo || 647dash328dash4807
 
|-
 
|-
 
|}
 
|}
  
[mailto:jphughes@learn.senecac.on.ca,istessema@learn.senecac.on.ca,gljubomir@learn.senecac.on.ca,rjalexander@learn.senecac.on.ca,hkamal-al-deen@learn.senecac.on.ca?subject=dps901-gam666 Email All]
+
[mailto:jphughes@learn.senecac.on.ca,gljubomir@learn.senecac.on.ca,rjalexander@learn.senecac.on.ca,hkamal-al-deen@learn.senecac.on.ca?subject=dps901-gam666 Email All]
  
 
= Proposal =
 
= Proposal =
 
==Introduction==
 
==Introduction==
 
+
In response to the proposal assignment in-class, this memo outlines our plans to create a 3D game for GAM666.
In response to the proposal assignment you announced in our class, this memo outlines our plans to create a 3D game for GAM666.
 
 
 
 
  
 
==Proposed Plan==
 
==Proposed Plan==
 
+
Our game is going to be a ball rolling through a maze. The point of view will be third person perspective as if the camera is following the ball.  The entire level will propel the balls movement by “tilting” the level and simulating gravity. The objective will be to successfully roll the ball to the target while using visual cues (objects) to keep track of where the ball has been.  Various obstacles may hinder the balls success.
Our game is going to be a ball rolling through a maze. The objective will be to successfully roll the ball to the target while using visual cues (objects) to keep track of where the ball has been.  Various obstacles may hinder the balls success.
 
 
 
 
  
 
==Feasibility of Project==
 
==Feasibility of Project==
 
Our group has looked at this project quite carefully and we think it's feasible because:
 
Our group has looked at this project quite carefully and we think it's feasible because:
 
 
 
 
*We will be building on the existing framework provided by Chris Szalwinski.
 
*We will be building on the existing framework provided by Chris Szalwinski.
 
 
 
 
*The first milestone should be relatively easy to achieve (having a ball rolling in a hall/room).
 
*The first milestone should be relatively easy to achieve (having a ball rolling in a hall/room).
 +
*Once we have achieved the first milestone, there will be plenty of oportunity for each team member to make further contributions and increase the complexity of the game.
 +
*Having an idea which is initially simplistic and builds in complexity will allow our team to ensure a polished look and playability.
  
+
==Goals==
 +
{| border="1" cellpadding="5"
  
*Once we have achieved the first milestone, there will be plenty of oportunity for each team member to make further contributions and increase the complexity of the game.
+
! Goal !! Team Member !! Status
 +
|-
 +
| Mirror Surfaces || - || UNASSIGNED
 +
|-
 +
| Physics || - || UNASSIGNED
 +
|-
 +
| Friction || - || UNASSIGNED
 +
|-
 +
| Particle Systems || - || UNASSIGNED
 +
|-
 +
| Weather || - || UNASSIGNED
 +
|-
 +
| OBJ Model Importer || - || UNASSIGNED
 +
|-
 +
| Map Format || - || UNASSIGNED
 +
|-
 +
| Shaders || - || UNASSIGNED
 +
|-
 +
|}
  
+
==Preview Images==
 +
[[File:preview1_1.jpg|400px|thumb|center|preview1_1]]
 +
[[File:preview1_2.jpg|400px|thumb|center|preview1_2]]
 +
[[File:preview1_3.jpg|400px|thumb|center|preview1_3]]
 +
[[File:preview1_4.jpg|400px|thumb|center|preview1_4]]
  
*Having an idea which is initially simplistic and builds in complexity will allow our team to ensure a polished look and playability.
+
== Map of the World of the Game ==
  
== Map of the World of the Game ==
 
 
= Moderator's - Instructors Comments =
 
= Moderator's - Instructors Comments =
  
 
=Team Schedule=
 
=Team Schedule=
 
==Meetings==
 
 
===Wed, Sept 29 @ 9:00pm===
 
IRC Meeting<br />
 
In Freenode, /join #seneca-students
 
<br />
 
*IRC Log
 
<pre>
 
    <northWind>    we need to work out a proposal
 
    <tdot>    i liked the idea ljubo told me yesterday
 
    <northWind>    essentially a 250 word informal desc. of game idea + bunch of pics
 
    <tdot>    lol
 
    <tdot>    how do we get pics of a non-existant game
 
    <northWind>    i got the pics handled
 
    <northWind>    like, story board
 
    <tdot>    lol
 
    <tdot>    do we even know what we are doing in gam666
 
    <northWind>    well
 
    <northWind>    the last idea we all seemed to agree on was like a rolling ball
 
puzzle game
 
    <tdot>    yes
 
    <tdot>    that sounds good
 
    <ljubo>    I like that idea a lot
 
    <ljubo>    I was thinking
 
    <ljubo>    maybe as an alternative to having the board tilt
 
    <northWind>    ok?
 
    <northWind>    we like alternatives lol
 
    <ljubo>    perhaps having a ball that can be moved and turned with the keys
 
    <ljubo>    like a person
 
    <northWind>    ahhhhhhhhhhhhhhhhhhhhhhhhhh
 
    <tdot>    yes northWind likes alternative loving
 
    <ljubo>    or a 'remote control ball'
 
    <ljubo>    and
 
    <northWind>    thats cool
 
    <tdot>    well we can probably do both
 
    <ljubo>    kinda 'third person' view
 
    <tdot>    the input is going to be the least of our problems
 
    <northWind>    yeah
 
    <northWind>    ok
 
    <ljubo>    so you don't see the whole maze
 
    <CloudScorpion>    just throwing this out there, does this proposal have to our
 
plans for the framework changes y/n?
 
    <tdot>    yes
 
    <northWind>    so maybe you can apply force on the board and you can tilt the
 
board?
 
    <tdot>    thats ljubo's idea i liked
 
    <tdot>    if its kinda like 3rd person following the ball
 
    <CloudScorpion>    have to have*
 
    <tdot>    so you can get lost in the maze
 
    <ljubo>    yeah
 
    <northWind>    ok so you want a maze that you can get lost in
 
    <ljubo>    you can get lost
 
    <ljubo>    but
 
    <ljubo>    we put objects around
 
    <ljubo>    so you learn your way
 
    <ljubo>    like
 
    <ljubo>    "I've been down there before and it was a dead end"
 
    <ljubo>    "I recognize that object - I'll try going right this time instead
 
of left"
 
    <northWind>    hmmm i may not like the idea of more than very few objects
 
    <northWind>    and thats just because we don't have time to make models
 
    <tdot>    lol no
 
    <tdot>    northWind
 
    <tdot>    there are many free models online
 
    <tdot>    as long as we don't animate them
 
    <tdot>    its pretty fucking simple to do
 
    <ljubo>    I'm thinking simple things
 
    <ljubo>    pictures on the wall
 
    <ljubo>    a lamp
 
    <northWind>    hmmm interesting
 
    <ljubo>    chandelier
 
    <northWind>    in this case, the idea of the game would be to navigate the map
 
    <tdot>    maybe also include elements for the other type
 
    <tdot>    like traps you can fall into
 
    <ljubo>    it would be like you are walking through a maze/labrinth
 
    <northWind>    in the original idea w/ a tilting board, the idea is to avoid
 
obstacles and to avoid falling off board or falling into holes
 
    <northWind>    yeah
 
    <northWind>    so
 
    <tdot>    could combine both
 
    <northWind>    which type of gameplay do we like better
 
    <northWind>    ok, then lets think about camera
 
    <tdot>    i think following the ball 3rd person sounds cool
 
    <northWind>    hmmm but our ball is not a very interesting model
 
    <northWind>    what if its a bit distant?
 
    <tdot>    northWind: couldn't we make it really interesting?
 
    <tdot>    lol
 
    <northWind>    lol
 
    <northWind>    suppose we can
 
    <tdot>    make it a high poly count ball and make it reflective
 
    <northWind>    how about this
 
    <northWind>    how much screen space will ball occupy
 
    <tdot>    if we are going to add some pixel shader support it shouldn't be
 
too hard to make the ball reflective
 
    <northWind>    well
 
    <northWind>    we can pretty it up
 
    <northWind>    but how much screen space does ball take up
 
    <tdot>    lol
 
    <tdot>    no idea
 
    <northWind>    cuz thats going to determine dist. from camera
 
    <tdot>    maybe its variable?
 
    <tdot>    i mean you cant n64 it and get the camera stuck in a wall
 
    <northWind>    ok, so like mouse wheel?
 
    <tdot>    or distance/direction/speed based
 
    <northWind>    well as long as walls aren't too high, we should be ok
 
    <northWind>    and I like distance/direction/speed based
 
    <northWind>    guys any other ideas?
 
    <tdot>    cloud hasnt been saying anything
 
    <tdot>    it would be cool if like
 
    <tdot>    some parts of the map had walls and some didn't
 
    <tdot>    so you'd have to drive carefully
 
    <tdot>    or you'd fall off
 
    <northWind>    yep, i assumed we'd do that so i def. approve
 
    <northWind>    maybe some parts of board are not flat
 
    <tdot>    that too
 
    <tdot>    well
 
    <tdot>    maybe
 
    <northWind>    so like tilted to one side and the bottom side would have no
 
walls or something
 
    <tdot>    thats gonna increase the difficulty of coding it
 
    <northWind>    hmmm true
 
    <northWind>    maybe
 
    <tdot>    if its one level and flat
 
    <northWind>    unless our rb collision kicks in
 
    <tdot>    the actual game code isn't gonna be hard
 
    <tdot>    all you really need is 2d collision detection
 
    <tdot>    and some very simple 2d physics
 
    <tdot>    if you start designing curves and tilted areas
 
    <tdot>    youre gonna need to start coding 3d collision detection and
 
3d physics
 
    <ljubo>    one thing I like about this idea in general
 
    <ljubo>    is that we can set some very simple mile-stones
 
    <ljubo>    1st mile-stone) get a ball rolling in a room
 
    <northWind>    thing is, we may be able to get away w/ levels made in 3ds max
 
    <tdot>    and before you know it, 75% of our work will be on that
 
    <tdot>    lol northWind thats not the point
 
    <northWind>    ljubo: yeah I agree
 
    <northWind>    tdot: our work's gotta go somewhere
 
    <tdot>    lol yeah
 
    <tdot>    into a simple, workable, polished game
 
    <ljubo>    northWind: we can have a wish-list of features that we can
 
implement after we hit the first mile-stone
 
    <northWind>    lol polished? rujoking?
 
    <tdot>    no
 
    <tdot>    i think it would be actually easier to polish the game
 
    <northWind>    ljubo: wishlist is a good idea, lets not go crazy tho
 
    <ljubo>    no need to go crazy… we hit the 1st mile-stone, see
 
how much time we have left, decide what is the next thing
 
we should try, and keep adjusting the wishlist based on what seems
 
realistic - and keep reevaluating as we go - but always
 
setting achievable mile-stones along the way.
 
    <tdot>    then to attempt to make curves/hills
 
    <northWind>    tdot: hmmm depends on the type of collision in the game
 
    <tdot>    to make like shadowing, and reflections
 
    <northWind>    anyway thats very specific
 
    <northWind>    we dont need to think about that yet i dont think
 
    <ljubo>    remember what chris szalvinsky said
 
    <northWind>    CloudScorpion: you there cloud?
 
    <ljubo>    we could spend hours researching and trying to implement something
 
    <ljubo>    even start coding it
 
    <ljubo>    and if it does not work
 
    <ljubo>    it counts as research
 
    <ljubo>    and we get marks for it
 
    <tdot>    lol hmm
 
    <northWind>    ok then it sounds like we have a number of ideas already
 
    <northWind>    lets think about what we need for tmrw
 
    <tdot>    well all i know is if we keep the levels simple
 
    <northWind>    we need 250 words, informal, rough description of game
 
    <tdot>    its only really a 2d map with 2d math
 
    <ljubo>    I can draft a general proposal EAC397 style
 
    <tdot>    its just drawn as 3d
 
    <tdot>    that would make it pretty simple for us to work with
 
    <northWind>    i think the game will have to be 3d honestly
 
    <ljubo>    250 is nothing
 
    <northWind>    ljubo: indeed
 
    <tdot>    northWind: not really
 
    <northWind>    ljubo: I got the pics/slideshow, do you want to do the
 
informal desc?
 
    <tdot>    the *game* has to be 3d
 
    <tdot>    the map and physics and collision doesnt have to be
 
    <northWind>    tdot: I mean 3d gameplay
 
    <tdot>    i dont think so
 
    <tdot>    i dont see why its required
 
    <northWind>    tdot: I think that you can only get so far w/ 2d gameplay
 
    <tdot>    'so far'?
 
    <northWind>    tdot: especially in a rolling ball game w/ a tilting board
 
    <tdot>    thats sort of the point
 
    <tdot>    so we can end up with something polished
 
    <CloudScorpion>    lol, you kids seem to be chatting it up just fine,
 
I'm cooking dinner :p
 
    <tdot>    something that looks and plays decent
 
    <ljubo>    northWind: sure I can do the proposal
 
    <tdot>    if we attempt to make '3d gameplay' we will end up with a
 
nice prototype of a very shitty 3d engine
 
    <northWind>    tdot: like what im saying is, how do you do w/
 
only 2d math with a game that involves a ball rolling on a
 
board thats tilting in 3 dimensions?
 
    <tdot>    lol
 
    <tdot>    simple
 
    <tdot>    just increase the balls velocity by the direction
 
its being tilted
 
    <northWind>    ljubo: k cool, so lets work based on that, use the
 
ideas that we developed here, do you approve of them?
 
    <northWind>    ???
 
    <northWind>    tdot: it needs to fall off board
 
    * ljubo    aproves
 
    <tdot>    and the map would be a 2d grid of tiles, with special
 
tiles for 3d
 
    <ljubo>    I will copy the irc chat and draft proposal tonight
 
    <tdot>    northWind: yep, when it hits a tile it can fall off of
 
(which is a simple 2d calculation) it can fall thru
 
    <ljubo>    I'll email it to all
 
    <ljubo>    and tomorrow you can comment
 
    <northWind>    ljubo: ok
 
    <ljubo>    early in the morning
 
    <tdot>    its still all going to be rendered in 3d
 
    <ljubo>    and I'll have it ready by early afternoon
 
    <ljubo>    is that ok, or do we need it done for class?
 
    <northWind>    tdot: and what about when the board is like tilted
 
15 degrees and the ball needs to accumulate
 
velocity in the direction the board is tilted?
 
    <tdot>    lol
 
    <northWind>    ljubo: we need it done for 8 am
 
    <tdot>    what?
 
    <tdot>    you honestly cant figure out how to do that in 2d?
 
    <ljubo>    ok - then do you trust me to do it right without any
 
suggested revisions from group?
 
    <northWind>    ljubo: yes I do, I don't see how it can turn out badly
 
    <tdot>    how exactly does tilting it 15 degrees affect the
 
height of the ball *at all*
 
    <northWind>    ljubo: I'll be up long tonight, email whenever
 
    <ljubo>    northWind: cool - I'll do that ;)
 
    <northWind>    tdot: tilting the board? it affects it completely
 
    <tdot>    lol
 
    <tdot>    no it doesnt
 
    <northWind>    tdot: hold on, I think you may not know what I'm referring to
 
    <tdot>    the ball is still always against the ground
 
    <tdot>    its height is static
 
    <northWind>    guys, the game im thinking about is essentially this
 
    <northWind>    http://www.officegamespot.com/flashgames/tilt.htm
 
    <cadecairos>    http://www.youtube.com/watch?v=OdQQZPQS0r8
 
    <cadecairos>    thats my rebuttal
 
    <cadecairos>    reBUTTal
 
    <northWind>    ljubo: just a sec
 
    <tdot>    lol thats nasty
 
    <cadecairos>    lmfao
 
    <northWind>    https://cs.senecac.on.ca/~gam666/pages/assignments/a1.html
 
    <tdot>    lol yeah exactly
 
    <tdot>    how is that game 3d
 
    <tdot>    its actually really shitty lol
 
    <tdot>    the physics and movement dont feel real at all
 
    <northWind>    yeah I agree
 
    <northWind>    it is shitty
 
    <tdot>    and yeah, thats 2d
 
    <northWind>    what I was thinking about is a game w/ like
 
multiple z levels in some places
 
    <northWind>    like you have to drop from one to another
 
    <tdot>    lol yeah
 
    <tdot>    then youre going to increase our development time by 10
 
    <northWind>    kind of like this guy over here
 
    <northWind>    http://www.java-gaming.com/game/3627/Roll_Ball/
 
    <northWind>    feel free to compare and contrast which is shittier lol
 
    <tdot>    we should do something in between the two
 
    <tdot>    anyways theyre probably both 2d
 
    <tdot>    all of the levels in the 2nd one are still on one dimension
 
    <tdot>    they just have the concept of height
 
    <northWind>    level 3 has ramps
 
    <tdot>    lol does it?
 
    <northWind>    im pretty sure they have 3d collision
 
    <northWind>    and in any case, chris said hes giving us collision
 
detection I believe so I don't have to do it
 
    <tdot>    meh
 
    <tdot>    for now, lets aim for the first one
 
    <tdot>    i guess if doing one like the 2nd is possible is really
 
completely up to what he gives us with the framework
 
    <northWind>    alright Im cool w/ that
 
    <northWind>    ljubo: get all that?
 
    <tdot>    lol im sure ljubo did
 
</pre>
 
  
 
=Links=
 
=Links=
 
==Project Requirements==
 
==Project Requirements==
 
http://zenit.senecac.on.ca/wiki/index.php/GAM666/DPS901_Project_requirements_20103
 
http://zenit.senecac.on.ca/wiki/index.php/GAM666/DPS901_Project_requirements_20103
 +
 +
==Meetings==
 +
[[mutalisk_meeting_sept_29|Wed, Sept 29 @ 9:00pm]] in Freenode, /join #seneca-students

Latest revision as of 19:56, 5 November 2010


GAM666/DPS901 | Weekly Schedule | Student List | Project Requirements | Teams and their Projects | Student Resources


Mutalisk

Project Marking Percentage

Group work:      60%        (25 <= xx <= 50)
Individual work: 40% +      (50 <= xx <= 75) 
-------------------------
Total           100%

Repository Path

svn://zenit.senecac.on.ca/dps901_103rep12

Trunk Status

committed by Hasan

Messages

UPDATE: Nov. 5, Importing meshes from a file now ready

Mesh importing has now been implemented through the CreateMesh() method. To use it, #include "iMesh.h" and call CreateMesh("filename.obj", Colour somecolour);

CreateMesh: This function creates and returns the address of a new iObject object (in reality a Mesh object, descending from Object). The model file is expected to reside in resources/models (resources resides in the same directory as 15-Controller). Like other objects, set the Colour to whatever you want to multiply the model's texture by that colour.

--Hasan

Team Members

Last Name First Name Seneca Username Blog Url IRC Nick Phone Number
Hughes Joseph jphughes - CloudScorpion -
Alexander Ryan rjalexander - tdot -
Kamal-Al-Deen Hasan hkamal-al-deen The Orbital Station northWind 416NUMNUMNUM909NUMNUMNUM7925
Gorscak Ljubomir gljubomir Ljubomir's Blog ljubo 647dash328dash4807

Email All

Proposal

Introduction

In response to the proposal assignment in-class, this memo outlines our plans to create a 3D game for GAM666.

Proposed Plan

Our game is going to be a ball rolling through a maze. The point of view will be third person perspective as if the camera is following the ball. The entire level will propel the balls movement by “tilting” the level and simulating gravity. The objective will be to successfully roll the ball to the target while using visual cues (objects) to keep track of where the ball has been. Various obstacles may hinder the balls success.

Feasibility of Project

Our group has looked at this project quite carefully and we think it's feasible because:

  • We will be building on the existing framework provided by Chris Szalwinski.
  • The first milestone should be relatively easy to achieve (having a ball rolling in a hall/room).
  • Once we have achieved the first milestone, there will be plenty of oportunity for each team member to make further contributions and increase the complexity of the game.
  • Having an idea which is initially simplistic and builds in complexity will allow our team to ensure a polished look and playability.

Goals

Goal Team Member Status
Mirror Surfaces - UNASSIGNED
Physics - UNASSIGNED
Friction - UNASSIGNED
Particle Systems - UNASSIGNED
Weather - UNASSIGNED
OBJ Model Importer - UNASSIGNED
Map Format - UNASSIGNED
Shaders - UNASSIGNED

Preview Images

preview1_1
preview1_2
preview1_3
preview1_4

Map of the World of the Game

Moderator's - Instructors Comments

Team Schedule

Links

Project Requirements

http://zenit.senecac.on.ca/wiki/index.php/GAM666/DPS901_Project_requirements_20103

Meetings

Wed, Sept 29 @ 9:00pm in Freenode, /join #seneca-students