Meetings: TBA
|
March 4th, 2009 - Demo Video October 6, 2008 - New Subversion up
We have a new subversion server thanks to Kevin McClusky. You can connect to it using a program like TortoiseSVN or something, the URL is http://svn.gamedevcsus.org The latest version of the code uses Irrlicht 4.2 so you may have to update your directory links in Visual Studio. -Sterling sterling.schulkins@gmail.com September 1st, 2008 - Welcome back, no meeting this week
Welcome back everyone. We won't be having a meeting this week. However I would like to get everyone's input on a good time to have our meetings this semester. Just shoot me an email or send one to the mailing list. And as usual any input on how we should structure meetings is also welcomed. -Sterling sterling.schulkins@gmail.com May 18th, 2008 - New Googlecode Subversion Hey everyone, Few items of business: 1.) Just to clarify, we will not be having a meeting next week obviously because of finals. 2.) We have a new subversion server hosted on google code. To connect you must have a gmail account and be on the list of users for the group. (Willow already signed a bunch of you up so this shouldnt be a problem) To Connect to Subversion: - Install TortoiseSVN if you havent already - right click on a folder in windows to store the current copy of the code and go to "checkout" - enter this as the URL https://vdc-csus.googlecode.com/svn/trunk/vdc-csus - Go to http://code.google.com/p/vdc-csus/source/checkout and click the link to get your googlecode password (make sure you are logged in to google first) - back on tortoiseSVN enter the googlecode password that was given to you as your password and your gmail name as the username 3.) We may have some club meetings over the summer if anyone wants to. I know I will be working on the code over the summer and most of our communication will happen through the mailing list and the message board so make sure you're on it. -Sterling sterling.schulkins@gmail.com April 18th, 2008 - Development party today 3pm in Riverside 5029 For reference here is the UML diagram of the current code To view it, download the .zargo file above to your computer, then go here and open it using this java web program called argoUML -Sterling Schulkins sterling.schulkins@gmail.com April 4th, 2008 - Milestones and Miscellaneous REMINDER: OUR MEETING TIME AND PLACE HAS CHANGED TO TUESDAYS 4:30pm IN RIVERSIDE 5029. Few things: A very early and buggy version is now on subversion. At this point the most work is happening in Gamelogic still. AI has been moved down into the gamelogic header (vdc_gamelogic.h). The current structure makes use of C++ templates and this causes problems across header files, so AI and gamelogic need to exist in the same file. Milestone schedule is up! Take a look and see what you would like to do, then let me know We're going to switch IDEs from VisualStudio 2008 to VisualStudio 2005, since that is was the school uses. The code up on subversion is already converted to 2005, so all you have to do is launch the .sln file. In a perfect world we would have design done already, but for this project we'll sortof design as we go. Here's a quick concept sketch I made for a Hero character. If you are artistic and would like to send me your drawings for concepts such as good NPCs, Hero concept, enemy viruses, enemy hackers, items, weapons, armor, vehicles, landscapes, etc. I can put it up here on the site. Or if you just want to jump right in to modeling them that would work too.
-Sterling Schulkins sterling.schulkins@gmail.com March 25th, 2008 - Meeting and Subversion REMINDER: OUR MEETING TIME AND PLACE HAS CHANGED TO TUESDAYS 4:30pm IN RIVERSIDE 5029. Today's meeting was just throwing out ideas for content, the layout of the levels, how items will work and how they will combine together. Touched on some network play considerations. For those working on game logic I got multithreading working, so update runs on its own thread separate from render. A mutex lock is also acquired before the body of either loop executes so that the two threads dont collide when they access the scenegraph. The mutex is subsequently released after the body of the loop runs. Also, after much back-and-forth on the issue it looks like we wont need control over the render() method in the IAnimatedMeshSceneNode superclass, Irrlicht will take care of that for us when drawAll() is called from the scenemanager. The big thing is that we now have subversion online (thank you Kevin!) and you can access it by following these steps: -Download and install TortoiseSVN from: http://tortoisesvn.tigris.org/ -Download PuTTYGen and pageant from http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html -Run PuTTYgen. Make sure for Parameters you use SSH-2 DSA and 1024bits. ###### Configuring TortoiseSVN ###### -Find the section for configuring tunnel agents. Under the [tunnels] section, insert the following lines. -Right click on a directory that you'll be doing the commit's, check-out's and updates from. -Now load up pageant. Load your private key that you made earlier (key_name.ppk). Click the close button to minimize pageant to the taskbar. Pageant must always be running anytime you wish to make a transaction with the SVN server. The URL of the repository is: svn+ssh://nextreal@nextrealm.net/csusgamedev PS (Kevin Maris) March 17th, 2008 - Update NEW MEETING TIME AND PLACE OUR MEETING TIME AND PLACE HAS CHANGED TO TUESDAYS 4:30pm IN RIVERSIDE 5029. STARTING THIS TUESDAY (TOMORROW)
So I felt like working on the engine a bit this weekend, here's the results. What has happened here is I successfully extended IAnimatedMeshSceneNode (from Irrlicht) to CGameNode and on down our class hierarchy to CHumanPlayer. Each instance of the woman model here is an instance of CHumanPlayer. Also I wrote a method to easily apply the appropriate textures and materials to an object so that it has that glowing circuitry look with facet shading. The method is called setVisualStyle and it takes an int identifier of the style. Each style is an int defined as a #define macro. VISUAL_STYLE_SHINYBLUECIRCUIT is the style you see applied here to the woman model. Since we are extending IAnimatedMeshSceneNode, we can override the render() function in that class and gain control over how rendering is done of our models. This may become important if we decide to go with a multithreaded approach (we will need a way to block the render cycle if an update cycle is taking place at that particular moment). So to retract my previous statement from the March 11th post, yes our scene nodes with have both a 'render()' and 'update()' function in them that will be implemented by the classes at the bottom of the hierarchy. Right now my goal is to just get the base class structure set up and ready to implement. The AI class structure is done and ready to start being worked on, but we may need some more done in other areas before it's useful. And again, I'll try to be in 5029 as much as possible if people want to come and help. Here's the current version of the code -Sterling Schulkins sterling.schulkins@gmail.com March 14th, 2008 - Small Update Here's a short PowerPoint presentation on the concept of the game so far. I'd like to have the class definitions done sometime next week so we have a skeleton for how the engine will work. Then the teams can start writing the implementations of the classes. I'm going to try to be on campus as much as possible next week so if you'd like to help out drop by 5029, I'll most likely be there. Also, I'm using another email temporarily (see below) -Sterling Schulkins sterling.schulkins@gmail.com March 11th, 2008 - Meeting This week's meeting was mostly discussing the base structure of the game engine code. We talked about our CGameNode class, which will extend IAnimatedMeshSceneNode from Irrlicht. This will be our base structure for all objects in the game including players, NPCs, Items, Projectiles, and Models making up the environment. Our engine will only worry about the update() loop, while Irrlicht will take care of drawing all our scene nodes for us. So our scene nodes will NOT contain any draw() methods, I may have made the mistake of including that function in the CGameNode class before I realized this. If rendering states need to be changed for a particular node, they can be set in the update() call. We also talked about the CAIBehavior class which will drive each NPC based on its current behavior setting string. For example: a "PATROL" code will cause the CAIBehavior class to control the CNonPlayer node in such a way that it randomly walks back and forth over a certain area, and also triggering the appropriate animation sequence. To simplify things we can have some behaviors set other behaviors, for example: if a player comes within attack range while the NPC is in PATROL mode it can set the behavior string to "ATTACK", then on the next update() call the NPC will begin attacking. At this point we are still working on getting our base code in place, then the separate teams can begin their coding. However, it will most likely be the case that only a couple teams at a time will be doing coding since we need a relatively linear order of work. For now we will still meet in the same place again Tuesdays at 5:30pm in Santa Clara 1234, but this may change to accommodate everyone's schedules. -Sterling Schulkins sterling.schulkins@gmail.com March 4th, 2008 - Meeting For our game engine we decided on using the following API's
There were a couple good ideas for a concept, one of them was fantastic but we decided not to do it because it would be too violent for school-related projects. :) So for our game concept we decided to go with the original idea I had proposed in the previous meeting. If you recall it was the cyber-RPG idea. I will prepare some PowerPoint slides to present next time that will cover gameplay, the story, and a proposed way of structuring our classes. For now everyone should still be thinking of things they would like to see in the game and brushing up on their C++. :) The Message Board is now up, thanks Marcus for getting us that network account! For now we will still meet in the same place again Tuesdays at 5:30pm in Santa Clara 1234, but this may change to accommodate everyone's schedules. -Sterling Schulkins sterling@schulkinscreations.com February 26th, 2008 - Our Club Begins Thanks everyone for coming to the first meeting! For those of you who missed it we introduced the club, what we are about, and what we would like to accomplish over the next two semesters. We also decided that we would break up into groups to work on each section of the game engine. We are forming a sign-up for each part of the project. We are also currently in the process of putting up a message board so we can communicate and share code. A version control system is forthcoming, most likely Subversion. We decided to go with a Microsoft Visual Studio Express C++ 2008 IDE environment (download it here). Each team should be researching the best approach/API for their particular portion, then next week we will discuss what we want to go with. Just make sure we are still using OpenGL and C++. In addition, everyone should think of a great idea for a game, then we will vote on the best idea. If your idea is not selected don't worry, there will probably be a way we can fit it into the game somehow as long as it works within the constraints of the game as a whole. The idea is to keep everyone happy and excited about the project. For now we will meet in the same place again Tuesdays at 5:30pm in Santa Clara 1234, but this may change to accommodate everyone's schedules. Once again thanks for coming, this should be a fun and productive project. -Sterling Schulkins sterling@schulkinscreations.com |