Well, it's the final hurrah for this group. There have been lots of GUI improvements this week, with a new character select screen and nicer text and images in the HUD. Brian has been slaving away on all of those improvements.
We almost have audio integrated into our game, thanks to Kyle. Leon has been working on yelling at the physics code and fixing some bugs here and there with the pickups. Vincent unfortunately is still feeling under the weather, but he is working diligently on the win condition and regenerating pickups.
Nick did lots more projectile enhancements and some optimizations with deleting objects when they get too far into the distance. He has a cute doggo, and I think he's gonna bring it to the dungeon tomorrow.
Michael has been working a lot on animations. His girlfriend made a lot of weapon models, so thanks to her!
The morale looks mixed all around. I think we've accepted it and we know what to do now.
At the time of writing, the code line count was 11057.
Need to finish up win condition
Learned that sometimes you work on things and then you change something else and your old things break and then you become sad
Still sad and sick (3 weeks and counting)
Fixing physics bugs, fixing the gondola movement
Fixed some physics bugs with undetected collisions
Must do the gondola controlling now.
Socialize with friends
How to git rebase and technical debt.
I'm very worried right now. There are random crashes everywhere.
dust particles when running, sync footsteps with sound, weapon 3rd and first person animations, highlighting weapons and gondola, level editing, etc
most of this is done, and the rest will just be polishing (in terms of graphics..).
hardest week 10 of my life
today, im gonna polish graphics as much as possible, and tomorrow will be spent testing and balancing gameplay and planning out the demo
my brain is too fried to recall what i learned, but im pretty sure it was a lot
all nighter lets go
a view of voelker and 125 denizens, (c) Michael Khorram
find sounds for various effects, add sounds to game, allow to set playback speed
Most of it is done, just need to find more audio files to add into the game
had a final the sunday that just passed so i had to study for that
i'm gonna polish by adding the rest of the sounds in and finding more stuff
making games is hard
more work, lets do it
GUI and shadows by monday but that didn’t happen
improve character selection, starting screen, and HUD components (weapons and gondola distance display); make switching between first- and third-person cameras seamless (i.e. character faces same direction after camera switch)
spend most of my time debugging
put shadows back into the game, will be staying in the labs for a while tonight
learned a bit about using gimp
everything is jank
Work on the win condition and adding the weapons into the game to be picked up/equipped by the player
I was able to add weapons to be picked up/equipped and switched around but have yet to implement the vacuum. Also, we are still using the height win condition which is to be changed to island capturing. Also worked on character/gondola respawning and object deletion.
This week I had internal events for my dance team as well as a programming assignment and final to study for so my time was very split.
Finish the game. More specifically finish weapons and help out with win condition and whatnot.
I learned how stressful setting up and having it not work is... and how long it takes to set up which we need to do in advance. Again, building on Mac vs Windows is not fun.
Oh boy, last spurt let's do this :0
aki, (c) Nicholas Wong
We're at the point where the remaining features are kinda hard to implement, mostly because they're hard to fit into our code sturcture, but also because they're just plain nontrivial gameplay elements. We sure spent a lot of time building a game engine, and now we're panicking over building the game.
Nick did a lot of work with character selection, by introducing a new lobby game state, and built in some rudimentary win conditions using a timer.
Brian's been working on polishing up the graphics. Kyle is slaving away at some more models, and Michael is working on doing everything and being ambitious - props to him. Leon's crying ever so slightly as he sits at B220-22, because he doesn't like working on his own laptop, for some reason. He thinks the character controller will come soon. We're (Leon is) missing Vincent, and we hope he gets better soon so he can come keep Leon company in the lab.
Fix Gondola
Not quite finished with Gondola
Learned everyone else’s new code
Still sick and sad
This week I wanted to finish writing up the kinematic character controller.
I have the infrastructure in place... all I need to do is execute.
Did not implement the character and gondola controllers.
Finish the controllers. Test on the demo machines. Fix bugs. Try not to cry.
There's so much technical debt but so little time to go fix it.
Considering pulling all nighters starting tonight.
finalizing animations and balloon physics
more modeling and level editing, shader refactoring, 2d image rendering, animations for balloon popping and various weapon firing, balloon transparency, rim-shade based island highlighting, static-scene collision detection support, camera-terrain raycasting
other classes are in my way
gonna do dust particles when running, sync footstep sound with animation, weapon related animations and 1st person weapon view, a highlight effect for weapons on the ground and for the gondola, some busywork (animations for other characters, more level editing, etc.), and hopefully gonna try to make the balloons look more appealing. In general, work on finalizing this game.
learned a lot about our server. Also learned about garbage collection in compilers.
I see all-nighters in the near future
an empty b220, (c) Michael Khorram
Worked on some weapon models, find sounds for relevant effects and implement them
Created a dart model, found a lot of sounds that i'll have to go through to see if they are appropriate for what we want to put in
Did not get too many weapons done as modeling complex objects gets exponentially more difficult, didn't implement the sounds yet but found some files
Find the rest of the sounds and implement them
Modeling takes a lot of time
Ok, prepared to go extra hard for remainder of the quarter
GUI stuff
at the moment still working on improving the GUI, i.e. using a nicer arcade-y font instead of the monospace font, replacing static textured panels with the actual models in character selection, putting text on sorta-transparent background boxes so that the HUD looks nicer. also removed shadows from the game for the moment because they’re buggy
attempted to fix bugs with shadows
finish all the GUI elements and fix shadows by monday
learned more about cascaded shadow mapping
morale is good; we’ll pass the class, probably
Work on gameplay, fixing bugs, possibly optimize physics.
I actually worked on character/team selection as well as adding different types of weapons and firing into the game.
Gameplay and the win condition are something we still need to flush out and implement. I still could not figure out why some collisions are not detected even though the objects are colliding and resolving. I had (and will be having less time) because of a programming assignment and final next week. Also, I did not fully implement the GUI as I wanted to (the positions are hard coded and aren't scaled as desired).
Work on the win condition and adding the weapons into the game to be picked up/equipped by the player.
I learned how hard it is to do GUI stuff from scratch and that bullet collision detection debugging could be much better.
Panicking oh no.
On the gameplay and physics side, Nick has been putting in work, implementing balloon collection, attaching balloons to gondolas, and flying around with the gondola. There's also some rudimentary game state to get some win conditions in soon.
The graphics team has been working on prettifying the background, GUI, and shadows (which apparently have some bugs that I can't see, but whatever I trust Brian's expertise).
Vincent got a good system to debug our colliders and stuff by sending them over the network to the client to display.
Our major sticking point is still the physics - it may have cost us more time to use Bullet physics rather than roll our own simple system.
Group morale is hitting record lows. I think we'll see even lower lows next week.
Finish DebugDraw
Add more gameplay mechanics
DebugDraw finished.
Added ascii compatibility for config settings
Fix Gondola fix issues
Working on making gondola interaction more player-friendly
Still working on gondola
Finish fixing gondola physics
Add more complex win condition
Add Gondola features while in air
DebugDraw
namely networked DebugDraw, which was a really major effort from what I saw.Kinda sad got really sick and slept all day for past 2 days, but will work all day today to hopefully finish everything before tomorrow’s meeting.
This week I wanted to abstract the player input handling code outside of the server, and convert the character to be kinematics based, so it wouldn't interact weirdly with stuff in the world.
I got the input handling abstracted away, which was easy.
However, it's taking a while to figure out how Bullet wants me to do the controller.
Hopefully finish up the character controller before the weekend, and help out with implementing more gameplay and game state features.
Ended up really tired over the weekend, which was a huge setback because I didn't get to work on the game over the weekend as I wanted to.
People have been asking me if I'm OK.
Level editing, modeling, background scenery
Made some background scenery
textured the floating island and scattered some foreground scenery objects
minor graphical bugfixes and improvements
almost done integrating a level editing system to map
blender scenes to the game’s graphical and static-collision objects
This week was alright actually, but I’m having issues with bullet’s performance.
planned on finalizing animations which includes:
I’ll also revisit balloon physics and maybe look into optimizing bullet to allow more balloons to exist in our world.
many sites advertise ‘free textures’ even though they still make you pay for a subscription
clouds are hard to get right
uv texturing, OpenGL transparency, python scripting for blender
according to the 80/20 rule, 80% of our game will be made in these next two weeks
I hope so.Modeling and weapons
Made some models including a slingshot as a weapon
Animating and Implementing the weapons into the game, I'll have to see how to put objects into the game
Make more models and finetune them. Look into animations and implementing the weapons into the game
3d modeling can be very complex
not sure? there's a lot of things to do... :thinking:
rendering gondola/balloons
worked a bit on putting boxes behind 2d rendered text for the GUI
dealing with an exam, still getting thru 124 project
that was a hard final projectneed to fix shadows; shadow-enabled area is currently fixed around the origin, and not on the character
read a bit about how to fit an orthographic projection to the 3d camera projection so that shadows only appear in the player’s view; this is complicated, so probably need to think up another hack
this is why I'm not in graphics...actually panicking
Create character controller and fix collisions with the terrain. Create more scenery models (trees, rocks, etc)
I shifted to working on getting the gondola into the game as well as balloon weights to tie the initial balloons to. Then, I worked on moving balloons from weights to the character, from the character to the gondola, and finally having the character getting into the gondola and lifting. Lastly, I worked on adding game states and messages for timers and winners based on height.
While the terrain collisions seem to be good, there is a huge performance issue with a high number of balloon weights. In addition, the collisions with the balloon weights are not always detected (sometimes they get pushed away). I also had an essay to write this week.
Next week I will be working on gameplay, fixing bugs, and trying to optimize the physics to allow for more balloons.
I learned more about collision detection in bullet as well as sending messages between the server and client.
Stressed
With the addition of balloons and projectiles in the game, we are one step closer to getting some good gameplay implemented. For the most part, the networking side of things is fleshed out with the client an (almost) complete slave to the server. Shadows have been looking nicer since last week, and we're beginning to render some debug details into the world, to solve our main sticking point that is the physics side of things.
Next on the docket we hope to get a larger terrain to run around on, and finish up the balloons being tied down, which Michael has been furiously working on.
Group morale is looking a bit mixed, between stress and being pretty OK. Brian's stressed as usual, and Vincent and Nick are looking pretty sleep deprived. Michael doesn't show any signs of weakness, and Kyle's been chilling. I keep thinking about the looming deadline.
Getting physics to work properly with collision detection
Implement actual gameplay mechanics
Almost finished with debug drawing.
Physics still not optimal since hard to fix without debug mesh.
Add more gameplay mechanics
learned how debugDraw works
bullet is soooo fun
This week I wanted to finish writing the resource manager so as to get rid of all the hardcoded strings and numbers in the client, server, and physics code. I also wanted to get some gameplay elements into the game.
I also wanted to clean up a lot of code to make the interfaces cleaner.
Much of the client is now free of magic strings and numbers due to the resource manager, but we still have some remaining configuration values and initial scene values that are tough to get rid of without writing a scene loader, and defining what models belong to which classes, which I guess takes another file specification/loader...
On the gameplay side, we didn't get much of anything, and it seems like the physics is our main blockage right now. I haven't invested enough time reading the physics code to catch up to what Nick, Vincent, and Michael have been working on.
I wanted to clean up a lot of the code, but at the same time I didn't want to mess up established interfaces that my teammates are used to. I want to make this task happen but simultaneously it does not seem useful nor productive to compelete.
Next week I'd like to get working on the physics code so we can get some real gameplay going in terms of picking up balloons and attaching them to the gondola.
I feel like doing the physics simulation of the balloons attached to the gondola is not a good use of our time.
I think we're reaching the point in our code where our initial structure and organization is falling apart due to the complexity of the state that we have to track and shuttle around to various objects, e.g. the camera, graphics, physics, physics interactions, and client input, not to mention the fact that we have to shuttle this state back and forth between the client and server.
One point that we might be able to salvage is creating some kind of character handler in the server that simulates running the input received from the client, and that has power to create/destroy objects in the world. Currently all of that responsibility is handled by the physics objects themselves or in the server loop.
One cause of all of this littered and fractured code is the fact that we needed to write that code in order to test out whatever features we were implementing. We just needed to take that extra step to put that code into a good resting place, but there is a little time for that and little hints as to where is a proper place for it.
Even with this intuition I don't think there is anything we can do about it at this point in the quarter, since time is running out.
I'm getting anxious about deadlines hitting. I'd like to produce a good product, but I'm stressed that the game won't pan out the way the group wanted it to be.
I'm also getting stressed about the code itself, and I'm showing that a bit in my behavior with my group. I'll calm down a bit.
balloon rendering and physics
balloon shaders, balloon rope renderer (just straight lines right now), some broken balloon physics
balloon physics and curve rendering are stressing me out. Bullet is not making things easy for managing realistic balloon physics, and it turns out that determining the catenary curve given two points and an arclength involves solving a transcendental equation that my brain is not ready for.
Balloon physics is my biggest hurdle right now. I want to finish this asap so I can start adding content.
catenary curves, bullet
low
3d audio, look into modeling, help on physics
3d audio is finished and working. Started looking into how to use blender for modeling
I've been trying to look at all the bullet stuff but it all looks very complicated And I don't have a clue where to really begin. I'll have to ask about that
make some models, try to better understand the physics code and work on some gameplay items
I'm kind of wary right now about the way we structured our project, right now it seems like to to make a small change, it requires changing a place in many different files which can get pretty exhausting. It makes me realize how important it is to place code in appropriate places
not good
Rendering gondola with balloons
Minor client improvements (debug mesh, regex fix), figuring out bullet
Trying to get through 124 project to focus on 125
Gondola/balloon physics; also want to unjankify client-side code
Learned a bit about bullet digging through server-side stuff
Panicking
Continue working on physics collisions and sending messages to create/delete projectiles
Completed basic firing of projectiles and popping balloons. Moved the first person camera to its appropriate place
I was in the Bay Area over the weekend so I wasn't able to work on it as much as I wanted to
Create character controller and fix collisions with the terrain. Create more scenery models (trees, rocks, etc)
A bit more about bullet callbacks and how to deal with specific collisions
Alright
Pretty good week this week in terms of items accomplished. We've got floating islands being rendered now, complete with the associated terrain collider. The camera is attached to the panda and the panda is walking around on the terrain. Lots of GUI enhancements. Networking is more fleshed out and gives us as much flexibility as we will need to send our messages. However, there is still no real gameplay yet.
- Getting physics to work properly with collision detection - Implement actual gameplay mechanics
Physics is working with collision detection
No gameplay mechanics yet, still fixing bugs regarding physics interactions
- Gameplay mechanics? - Creating a debugDrawing functionality to check positions/collisions of physics objects - Add orientation field of character for proper mouse movement and other objects
bullets work a little
Bullet still makes me kinda sad.
This week I wanted to refactor the networking protocol to get rid of our assumptions of what messages were sent back and forth, and write a resource loader to manage all of our models and sounds.
Was able to rewrite the protocol to wrap messages in another overall message.
Still working on the resource loader. Would allow easier synchronization of our physics objects and non-hardcoded model loading in the client and server.
Will work on the resource loader and try to get some semblance of gameplay done with the balloons
Perhaps it would have been easier to do things right the first time with the networking protocol... but it was hard to do everything right entirely at the beginning. I think this is part of the iterative development.
Morale is better than last week. Though I'm still very tired from student org activities and other projects.
finish animations, start designing the level
just animations: -blending between animations (ie. running and strafing) -separate upper-body-only animations for shooting -can transform arbitrary subtrees in the bone hierarchy -can get bone transforms to link weapons to player’s hand
Some unexpected bugs slowed me down.
Game design, level design, asset creation.
Got better at using blender. Time flies when animating. I learned nothing from 15L.
Could be worse
3d audio
right now, the audio isn't fading based on the distance the listener is from the source but it should be close to being done
Had a midterm
Maybe physics or levels or gameplay mechanics? I need to figure this out
FMOD math is confusing.
ok, organizing and finding things in the project is getting more complicated
Toon shading, other random graphics stuff
Toon shaded island; first-person shooter style camera, spherical rotation (third-person), and free-moving cameras with crosshairs, cross, and pointer cursors; frame rate display as a text rendering proof of concept (basic UI); dynamic shadows via depth maps and two-pass rendering
Fixing shadow issues
Render a gondola supported by balloons (scene graph?)
Shadows in video games are just a bunch of hacks; it’s too expensive to render high-res shadows across the entire world, so we only render shadows in a small area and hope the player doesn’t notice there aren’t shadows on faraway objects; since shadow maps are always lower res than the screen they have a blocky look, so we blur the edges and hope the player doesn’t zoom in
Panicking; still need core gameplay
Work on physics collisions and create weapon models.
I created the slingshot, projectile, and floating island models/textures. I was then able to load the terrain mesh and have various objects collide with it.
I was less busy this week, but had some trouble with the character sinking into the terrain.
Send messages to delete models from being rendered in the client after being deleted in the physics world. Continue working on physics features and fix terrain collision.
I learned a lot about how Bullet works with time steps and callbacks as well as different types of collision objects.
Better, things are coming together!
Some good progress this week. We got toon shading, animations, and some networking improvements. Physics has been very difficult to get into the game and see collision responses (we can detect collisions but not respond to them).
Abstract commands to high level functions
All goals except physics
Still working on physics, bullet is implemented and working but proper physics not working yet
bullet no work
I feel like I'm in the labs more than I'm at home. Bullet makes me sad.
This week I wanted to cleanup the client code, and get object construction completely controlled from the server. I also wanted to smooth out the graphical movement on the client side, using interpolation. Lastly, I wanted to get some gampelay in the form of walking around with the panda and picking up balloon objects, as some really basic gameplay.
I was able to clean up the client and sync the client completely to the server. Also, I implemented the position interpolation, so things are looking smooooth now.
Was not able to get any work done on the gameplay - it required a large team effort that we couldn't do.
Get a networked balloon object into the game, help out physics for collision detection/response, and see if we can get a camera attached to the panda.
One issue that's hindering our team is our lack of communication - we did not meet enough in the labs, and when we did meet, we did not resolve important issues. Might have to try to write down our plans and thoughts better, as a team, so we all know what we're thinking about and up to.
I'm feeling pretty stressed out because it's week 5 and getting some baseline gameplay in seems quite far out right now.
At this point, it seems that we're spending more time on building up a game engine than actually making a game. I've read around on reddit that this is the experience of other independent game developers.
finishing animations, helping with modeling and level design
I’m able to load and play skeletal animations in our game, but I’m still working on blending the animations and tying them to player input and character state.
Even though getting animations to work took longer than expected, I’m glad it was on the order of days and not weeks. I haven’t been able to make additional progress due to other classes and midterms, but I think this is my busiest week, so I anticipate that after this week, I’ll be getting a lot done for 125.
Right now I want to create and blend between all the main movement animations for the panda (walk/run/strafe/backstep/jump). The goal is to quickly create rough, but functional, animations and then polish them later with the rest of the team. Immediately after this, I want to focus on designing the level with the team, and then creating a rough version of our level in-game so we get a feel for our final product. However, since the rest of the team is focusing on physics and collision detection, I may alternate to rendering and managing the gondola, balloons, and weapons as needed.
I didn’t actually learn much from last week, but I guess I gained debugging experience.
overwhelmed, but optimistic
Audio, Physics
Audio engine in master, it plays sound fine
audio is client side (plays on 1 client but not transmitted to others), still need to look into 3d sounds and events which requires me to look at fmod studio and generating banks, physics, had two midterms this week so that sucked
more audio stuff and help with physics
very little tutorials on fmod, documentation is dense, need to generate soundbanks for fmod to sound better probably
I feel ok
Toon shading
Tried out toon and flat shading on character models, and toon, flat, smooth, and smooth + textured shading on the terrain. Best looking combination is a toon shaded character and flat shaded terrain. Also messed around with Blender.
A cold, other coursework
Mouse-controlled third-person and first-person camera, and a free-moving debug camera. Client-side collision detection with bullet.
Toon shading looks best on enclosed models, and not on flat surfaces like terrain. Cel-shaded video games probably use some combination of specially-designed textures and ambient occlusion to make the terrain look good.
Panicking
Finish character models and begin implementing physics
I finished character models for 5 different characters and began working on collision detection with Bullet.
I was unable to work as much on physics as I wanted to because I was trying to get it to run on Windows, as well as having two midterms this week.
Create weapon models, continue working on collision and maybe look into some animations.
Running on Windows is not going as expected, there isn't much documentation on extensions. Linux subsystems are insufficient because you need to forward graphics to an X server.
Low/stressed
Tough week for our group. Most of our progress has been under the hood in structuring our code components. On the networking side, we've got a more organized server, and more convenience functions. For the graphics, model loading was a big focus, and works on almost all of our computers, mysteriously. Work has started on getting physics into the game, and we decided to use Bullet.
The group morale is definitely not as good as it was last week. It seems that we've gotten really busy with other classes and life events, and it's been stressing out some of us. Hopefully this will pass soon so next week we can make lots more progress.
Finished server-side input control and working on abstraction of commands.
Having trouble debugging multi-client support because our test bench code works but our actual game doesn’t.
Finish debugging multi-clienting if not done by tomorrow, implement notification system, decide whether to abstract object handling to a resource class instance instead of server. every problem in computer science can be solved with another level of indirection, right?.
Learned that debugging server client loops is difficult because it just gets stuck and doesn’t print (need more try-catches).
Need to help out other members more when finished with own task to offset workload distribution. yes, leon is crying for help
This week, my goal was to fix the code such that the server could send messages to individual multiple clients, and to get things compiling on Windows.
Unfortunately I accomplshed neither of these goals.
Even with Vincent's help, it's still a bit mysterious why one client stops receiving messages when another connects in the game, but works perfectly in the test bench code. There is perhaps something still missing in how we think zeromq works. Getting things to compile on Windows would be great for Nick.
Next week, I plan to finish all of my remaining essays/midterms so I can focus on getting a lot of progress done on this week's goals.
My time management isn't quite honed yet, such that I can make some progress on all of my projects every week. Maybe this isn't how most people work.
Quite low. Tired from a weekend of bike races and getting stressed from outside of classes and not getting work done.
This week’s focus was supposed to be on level design, scene graphs, and shadows, but I decided to work on animations instead.
Animation importing is taking sooo long.
Hopefully we can quickly finish shadows and toon shading so we can help with modeling and skeletal/particle effect animations.
I learned a lot about skeletal animations, and I’m trying to learn how to blend different animations, but I’m still confused about this topic. this actually seems like a lot to learn in one week!
more panicky than last week, but still ok overall
collision detection, audio, anything else that came up
tweaked audio a bit but not too much progress
not-school-related issues took up most of my time so i didn't have enough time
get audio to a good enough state, then look at what needs to be done on the physics side. Will try to do more work on it the next five days
Just the fmod documentation
stressed
Character shaders
Not much
Out for the weekend, and midterms
Toon shading, also need to add the OpenGL #include extension
Model loading, i.e. mesh and model tutorials from learnopengl.com
Mildly panicking
Continue designing characters and looking into bullet as physics engine.
I have a couple more character models that still need textures. I also included bullet and got HelloWorld to work, but still need to implement into our game.
I was unable to implement basic physics into our actual game, we still need to discuss how to do so. Also was busy with practice last week. I saw Nick's dance last week and it was amazing. Also, it is indeed getting a bit hard to integrate all these "separate" components together.
Finish up some character models and implement some physics.
Normals and how they can affect shading. Ubuntu is buggy... We should get a workflow setup on windows...
Not so good, need to invest more time.
Progress is coming along quite smoothly. The graphics team built a great deal of the basic framework needed - rendering, controls (first and third person cameras), and model loading.
On the art side, Nick learned Maya quite quickly and came up with initial concepts for characters and the gondola with balloons. They're quite cute actually.
Networking team implemented a working client and server, with rudimentary state synchronization on a simple cube.
Kyle has had the double duty of audio and physics - the fortunate thing is that we can trigger audio in our game, but we have not made progress on incorporating physics, except for some terrain collision detection.
The group morale seems quite good. We're making good progress, although since we haven't had anything particularly exciting yet, most of us are just OK and satisfied. Meetings have been quite lax - most of the team drops in and out of the lab throughout the day.
Of the above goals, accomplished #1, #2, #3.
For #4 it took longer than expected having to create multiple new classes and rearrange the structure from our initial test class to an actual character class and getting that to work properly before the actual implementation.
I learned how painful it is to build files when people are using different operating systems. I leared how to use ZeroMQ to send/receive data and when to use which request/reply structures to satisfy different needs. 2nd was expected, 1st was not expected but should have been.
Pair programming is better than solo programming. it does makes things less lonely!
This week, one of my goals was to implement an easy messaging protocol that would fit into our client server structure in order to synchronize necessary state across the wire. I also wanted to refactor the server code such that it would be simple function calls to receive data and send data to multiple clients. My last goal was to implement sending client input to the server to control the rudimentary cube.
We did implement an initial messaging protocol, but it is extremely limited (can only synchronize positions). I started on refactoring the server code, and it's much cleaner now, but there are some issues with sending data to clients that I can clean up.
Cleaning up the code took longer than expected, because I had some troubles understanding the zeromq framework, in terms of the "router to dealer" pattern that we're using. On a test bench for my networking code, I can send data to multiple clients at once, but that is not the case within the game server. Not sure what place I'd look at next to fix this. Sending client input to the server has been similarly difficult and time consuming due to the issues Vincent mentioned.
I want to design a better messaging protocol so we can optionally send much more data to synchronize all the attributes of our abstract objects. Getting the client side input done with Vincent will be a top priority as well.
It's been hard to decouple the network code from other modules, such as the server-side state and physics, and the the client-side controls and graphics, which I think would make it easier implement network code, since we can focus on just sending messages back and forth. We're almost getting to that point, and I'm considering getting it to the point where we can write code like that one group from a previous year, which didn't have to worry about networking at all.
Chilling in the lab with other group mates is fun, even if we don't have a meeting scheduled. Hope the team keeps dropping in.
It has been a little bit frustrating trying to see what other group mates are doing, especially during those times when we're just on text chat, but admittedly the autonomy has been getting us a lot of progress in graphics, audio, and art.
Loading OBJ models with Assimp, support instancing for balloons and particle effects, keyboard/mouse controls for camera, loading terrain with randomly placed trees and rocks, scene graph
Last week: 1st/3rd person camera class w/ gamepad input, model loading with Assimp. This week: low poly heightmap terrain with collisions, distance-based fog, almost done with instancing.
I've been putting off keyboard/mouse controls since there are different implementations we could choose to do depending on our gameplay (which is slightly TBD). I haven't gotten around to scenery object placement (ie. trees, rocks, roads?) or scene graphs due to lack of time.
scene graphs, level design, shadows?
5) To solve the problem of seeing the edges and corners of a terrain square after zooming out far enough, people literally just render a lot more terrain to fill in the horizon. I did not expect this. I also learned not to install drivers while your OS needs an update. I almost called a funeral for Michael's mac
7/10
Implement Audio, implement gravity / collision detection
Implemented a very basic audio engine using Fmod. Still needs work but can play sounds. Sounds are kind of distorted for some reason.
Audio isn't fully done because finding a easy to use API has been rather difficult and a lot of apis out there suck or are poorly documented. I need to play around and look at the documents some more. Haven't had time to look into collision detection and gravity yet
Collision detection and gravity, tweak and improve audio engine. Any other new thing that comes up
CS is hard
7/10 so pretty average? Just Ok
Implement toon shading
Refactor input handling and global vars, update Makefiles to separate client/server stuff, add/move a cube
Toon shading needs several characteristics to look pretty; more in-depth than I expected ( https://en.wikibooks.org/wiki/GLSL_Programming/Unity/Toon_Shading )
shading, organize OBJ models into a scene graph
Makefiles are annoying
OK
My goals for the week were to continue making models, start looking into the physics engine, as well as create a game design document.
I was able to create initial models for the balloons, character, and gondola along with basic textures. I also began studying physics engines to see what we will be needing and how to implement them. The game design document is a work in progress as well, but there are models and pieces of inspiration uploaded.
My goals weren't completely finished as they are works in progress, but the past few weeks have been extremely busy for me with practices. After this week, I will have more time to devote to these tasks.
For the next week, I will continue to edit the models and get some basic physics into the game (simple collisions and gravity).
I learned how to model and texture from scratch as well as some basics of physics collisions. There was definitely a tough learning curve along with using the program and making models (took me hours to make the initial character) but it was definitely a good experience.
Pretty good