That was freaking remarkable week,
Meetings Meetings Meetings.
Apparently I have enough “clients” to open my own company. Yeah.. who could even thought about that? World is crazy.
anyway, this is not what post will be about.
What I want to show is today’s achievement. Zombeesh project 🙂 – yes as you can see I have implemented sprites from Starcraft – still there is a lot to do – shadows, moving elements, etc but I need to create working prototype of a game in less than month.. and believe me it will be tough.. Group project, own company – planning, game development for xBox360 – yes on site We 🙂 will be developing xBox game well I cannot tell much about it yet but nick name for a project is “Craft” – yeah I need work something better.. but that can wait. Back to the topic
- I have managed to implement animations – but making them work is later issue.
- GUI manager allows me to add text on a screen to any position – future development placing images and animations – can be shifted for later on.
- SCV on a screen can build barracks in selected place, but to do that need to get there,
- Small fix for approximation error has been placed – SCV wasn’t moving to exact place, if it is close enough it/he (?) stops.
This weekend’s development plan – allow barracks to train Marines/Ghosts
Just quick overview for end of day 7.
- Input handler gets mouse position and escape button
- Drawing 3D maya objects
- Sound player
- drawing 2D over 3d object
- Font engine – well subsystem but..
- High precision timing
- CPU usage
Still loads left to do but as for one week it is fairly enough!
Lately I have started developing Game Engine for my Game Architecture Module at University.
It is C++/DirectX (at the moment it is directX 10 with HLSL but in the future it will be kinda smart and will detect what DirectX can be lunched on PC in future maybe OpenGL as well – we’ll see.)
Target for this project is to create basic but flexible and easy to extend RTS game engine.
To present features of engine on every milestone I’ll publish release, and a code for it because I guess putting code in a post may be kinda messy. However some simple methods or smart ideas I ll post ;).
The engine is designed in a way that extending should be fairly easy.
- Starting Windows’ window
- Creation DirectX device
- Loading/Processing Vertex and Pixel shader file
- very simple camera
- very basic input handler
- model class
- simple shader debuger
- error handling
Milestone 1 (01/02/2011)
Working 3D environment – Terrain
- height map – loaded from file
- sky box
- loading object from graphics programs
Milestone 2 (01/03/2011)
- Collision Detection
- Picking elements and movement
- Basic AI
- Placing object on the map
- Simple Game Logic – building units, balance
Milestone 3 (01/04/2011)
Working Scripting System
- LUA scripting language implementation
Milestone 4 (01/05/2011)
- I bet I ll find something
- Well documentation and tutorial
This is just draft probably this days will change eventually however I will be aiming in release date which is be totally accident a day of my birthday 🙂
Today I am putting a Debug release of Engine – it is really deep alpha and it works only on pc’s with DirectX 10 or later. (Vista or 7)
Version 0.2 – this version is rendering green triangle on a screen to make that it uses shaders, basic input class manage to close program when escape button is being pressed.
Below is full code for my SD3 assignment – or you can download it from here – zipped project or here – .jar
“You should write a report about your software (max 2 sides A4) in the report you should discuss the strengths and weaknesses of the Strategy pattern and discuss how you would have implemented your code not using the strategy pattern.”
How is it working?
Current solution as a first thing checks files for serialized data and if there are any it adds MP to arrayLists – so in a sec it will allow us to operate on this objects.
After adding MP’s to lists my program creates new instance of Program Class which is basically engine that interacts with user (displays communicates, gather inputs), process events, and deal with MP objects.
Program Class is divided to flexible layers which are
- Display Communicates – Methods that are called only to display information
- Logic Processors – Methods that manage whole input/output processed – heart of the program
- Object Factories – Methods that are creating objects or changing attributes of already existing ones
Continue reading “Software Development 3 – MP’s management System”