Difference between revisions of "Team Mutalisk"

From CDOT Wiki
Jump to: navigation, search
(Wed, Sept 29 @ 9:00pm)
(Trunk Status: Added importing meshes message.)
 
(25 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
 +
 
 +
== 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 Memebers =
+
= 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 =
 +
==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==
 +
{| border="1" cellpadding="5"
 +
 
 +
! 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]]
  
== Proposal ==
 
 
== 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==
 
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