276

(47 replies, posted in Tutorials/Examples)

Thanks dodosoft. That's great smile I'm sure I can find something there I can throw in smile I'll quickly spec out stage 2 and see what people think about that. I think there's also no decision that has to be made about which gun to use.

One quick question, what do people think about the actual movement. We have access to Bullet in Maratis, it's probably the quickest and easiest way to get something reasonable moving around a 3D world, but has the problem that things like going up stairs will cause the player to slow down. I've fiddled with some numbers already and found it awkward to do in a nice and easy way. Another option is to ignore physics and move around the world manually using a 3D mesh, possibly an invisible lower poly one. I believe it will get better results quicker, but also be more prone to miscalculations... gah. Well, if someone has thoughts, please shout. I'll look into it a bit more and see what I can do quickly otherwise.

277

(47 replies, posted in Tutorials/Examples)

Unfortunately, I've been quite busy recently and haven't been able to push forward with this, but I should be able to get back on top of it soon. If anyone wants to donate a gun model for upcoming tutorials, I would be very thankful, otherwise I'll scour for something free and suitable.

278

(47 replies, posted in Tutorials/Examples)

A simple input manager wrapper is now added to the tutorial series. Will hopefully begin the game soon tongue

279

(47 replies, posted in Tutorials/Examples)

Woo, another tutorial done. No new functionality this time, but the next few won't do a lot for functionality, just some helper framework stuff. But it should make work a loooooot easier in a bit. Just need to get some things set up though. Anyway, here it is.

280

(47 replies, posted in Tutorials/Examples)

I just had a thought, I haven't uploaded the tutorial project anywhere yet, but I have got a private git repository for it and, as of Tutorial 5, I've started branching each tutorial when I've finished it. I've put it up on Github, as I think it's probably the easiest way for people to see it, and maybe even contribute at a later date!
https://github.com/nistur/MaratisTutorial

281

(47 replies, posted in Tutorials/Examples)

Oof, if you're going to want enemies, it will take a little longer. I should be able to get things shooting roughly in your direction, but I haven't got a clue yet how to do pathfinding. I've used recast a little before, but that would require a considerable amount more work. Hmmm.

I think one of the main issues here is that Unity has a load of premade behaviours, whereas Maratis hasn't. The amount of enemies is pretty trivial really, most of the time, once you have 1, you can duplicate pretty easily. I think the best thing for "stage 2" would be to get something playable but not aim too high. Then further tutorial stages can focus on things like AI or vehicles, depending on what is requested.

It's a bit of a shame that I can't make a very simple FPS example, but hopefully we can get some more behaviours added to Maratis to make it easier.

282

(47 replies, posted in Tutorials/Examples)

You're right. I did some vehicle physics on a previous project, so it's something I would be interested in doing at some point, but for now, you're right, it's too specific for the beginning of my tutorial series tongue

Now you've mentioned it, I think I can maybe start working on something quite simple, but hopefully quite interesting. Starting with "stage 2" I think I will begin working on a sort of FPS game thing. How does firing spherical projectiles sound to you? Can build up a physics world with barrels to shoot them against. Later on we can maybe specify some kind of world collision where we can leave decals... There shouldn't be _that_ much to do, but enough variety for a pretty decent tutorial stage.

EDIT: Maratis Paintball! Stage 3 can be to add vehicle sections wink

283

(47 replies, posted in Tutorials/Examples)

No problem, nice to hear some feedback smile
Those topics are pretty broad, is there anything in particular you'd want? The aim is to make a small game with the tutorial eventually, mainly using code for the game I'm working on. I haven't, however, decided what sort of game it would be. If you would like to contribute some sort of ideas for how you would use physics, for example, I'm sure it would be pretty simple for me to add some things into stage 2.

Animations, I'm still trying to decide on a design for. I've had experience with 2 different animation systems so far and they both used a state machine to handle them. As i'm planning on adding a state machine into the framework at some point, it seems like a sensible thing to (re)use. My only issue is, how to store the state transitions. Ideally, this should be exposed to a potential designer/artist, so they can tweak stuff, but Maratis Editor doesn't have anything like that yet, so it would be manually writing text files. Even if they were xml, reading it would be a pain. I'm thinking this may be a good candidate for editor/engine plugin behaviour. The other alternative would be to code the state transitions, which would be a quicker solution, but less elegant, I feel.

284

(47 replies, posted in Tutorials/Examples)

Thanks, I had a look but I couldn't find the tick anywhere.
With regards to being synchronised at 60fps, I agree, that's probably enough for most situations, but there's also the possibility that something (could be either Maratis, the game or even external) which causes a tick to take longer than what was intended. I feel it's usually safer to have it time based so that we don't get crazy behaviour in some of these cases.

Also, incase anyone reads this and now wonders what the point of the game clock class is. There's very little right now, apart from the automatic ticking of timers, but later on, if you wanted bullet time or something, you could easily add time dialation factors to gameclock which would slow game logic but not require changes to Maratis libraries.

I'll update the tutorial later on today.

285

(47 replies, posted in Tutorials/Examples)

It's got a bit longer than I was hoping. But it's done. It's a step towards a nice framework to start working on. Anyway, here it is. Good night

286

(47 replies, posted in Tutorials/Examples)

Right, so I have the code done for the timer tutorial section, but my webhost database seems to have given up... which is juuuuuuuuuust great. I'm getting it looked at, but yeah.

Also, the reason my level wouldn't load was because my behaviour had a space in one of the variable names, which wasn't valid once it was XML. Oops.

EDIT: Webhost's back up, I'll start writing

287

(47 replies, posted in Tutorials/Examples)

I've started it. I'm going to have it up some time tomorrow. I'll have the first half (no code yet) up in a bit smile

EDIT: The first half of the tutorial is up. I got a bit carried away and I've started with the code. I was just having a problem with Maratis where it wouldn't load my level for some reason. So I got frustrated. Will finish it tomorrow though.

288

(47 replies, posted in Tutorials/Examples)

I can do that smile As I said, I was expecting to write a timer system at some point. What do you think if I put it in next, and have something like making the box do a vertical bounce, when it hits "the floor" it kicks off a timer for a set amount of time, it jumps up again. Does that sound acceptable?

The way I see it, it will have the following new things in the tutorial:
- Game clock wrapper class
- Custom game class to handle the game clock
- Timer class with command pattern callback

EDIT: It's been a while since I looked at Vega's examples, what I'm planning is slightly different to them. Rather than a timer which counts up to an arbitrary number, I usually prefer counting down, also, I'm going to try and add some degree of nice design to this and go forward not just hacking things together, like I did in tutorial 3.

289

(47 replies, posted in Tutorials/Examples)

Which timers do you mean? Something like Vega's tutorial?

The way I'm writing this tutorial series is mirroring how I'm using Maratis to make my own game. A timer is a pretty standard building block in making games, so I'm sure it would happen sooner or later. Is there anything you're planning on using a timer for? I will do my best to accomodate what you need.

290

(47 replies, posted in Tutorials/Examples)

Tutorial 3 completed. It's possibly a little too much code, but there's a lot of setup code. Oh well. I also feel very bad for just hacking things in quickly, I am itching to get to the tidying tutorial and refactor stuff...

291

(47 replies, posted in Tutorials/Examples)

I've not had time to finish off the tutorial tonight, I got most of it done, but there's still some more to finish up. On the plus side, I think I have plans for all of stage 1.

292

(47 replies, posted in Tutorials/Examples)

No worries. I am going to try to finish the tutorial I'm on tonight and then do some planning for a couple more. I have a few infrastructure ideas for some. Just need to work out how I'm going to break them down

293

(47 replies, posted in Tutorials/Examples)

Right, no excuses for the delay in me providing anything. I am just plain useless.

I have, however, come up with, what I hope will be a better plan. I've started doing some text tutorials first, I'm going to do tutorials in "stages". The first stage will be getting comfortable with Maratis and developing with it. I'm hoping for feedback as to what to do next. Once each stage is written and published, I will cover the same topics in a series of screencasts. As I've already written the text, the screencasts should be simple for me to do, but allow me to give some more detail, instead of pages and pages of text, or thousands of screenshots.

I have started "stage 1" already and have the first 2 tutorials, setting up a Maratis project and then creating a code project alongside it. Any comments are welcome, either here or attached to the tutorials themselves. I'll try and finish what I want from Stage 1 this weekend, but I also need to go and buy food to keep me alive... so I make no promises.

Maratis Tutorials

294

(1 replies, posted in General)

WP7 currently doesn't support native code at all. There has been some speculation at my work that they will introduce it soon, but as far as I know, no C++ would run on it. It also has less multitasking ability than the original iPhone, from memory.

If you want Maratis on your phone, choose iOS or Android for now. If you want to create Maratis games for mobile and distribute, choose iOS. Android, as much as the devices can easily outperform iOS ones, is so fragmented, it is incredibly difficult to support all, even in terms of something so simple as screen resolution.

Trying to debug an issue that only happens on device at work, which means lots of very slow compiles... I've had time to have a bit of a fiddle with Blender and sort the edge split stuff. Lighting looks a lot better now, thanks smile

http://nistur.com/maratis/Umar/sshot2.png

Some issues with this is that they're still low poly block outs without the correct textures (apart from the bannisters on the stairs) so it still looks a little wrong, but very pretty still I think. Unfortunately he made it originally for UDK, which has lots and lots of shiny features like the light beams coming through all the windows... but still

I just put some assets from my friend Umar from an environment he's working on. I'm mainly using this as a test of the art pipeline, but also, it looks very pretty.

I'm having a couple of issues with shading groups when importing into Blender (hence the shadows looking incorrect) but I just thought I'd throw up a screenshot to show how it looks smile

http://nistur.com/maratis/Umar/sshot1.jpg

Updates likely

297

(1 replies, posted in General)

I've been trying to export models from Blender, they're actually made in Maya, exported as .obj and brought into Blender.
For some reason, when loading them into Maratis, the collision volume is offset from the actual model. Usually it is as if the model was placed at 0,0,0 and goes to... 1,1,1... and the collision box goes to -1,-1,-1.

I'll try and get a screenshot to explain this tomorrow I guess. Was just wondering if anyone else had come across this and what it might be. From what I can see, all the models are at 0,0,0 in Blender.

298

(37 replies, posted in Engine)

Sure, it already has a stream writer built into Shiny Profiler. I can easily add a file output, maybe before closing. The stdout stuff was just to check that things were being profiled correctly smile

I wasn't planning on doing a MGui output window until I was sure I had Maratis fully tagged and the profiler giving valid information.

299

(4 replies, posted in Bug report)

What errors are you getting?

300

(37 replies, posted in Engine)

Success. Well, partial for now anyway tongue I have some of Maratis profiling smile I stuck profile tags in all the functions in MaratisUI and I'm about 1/2 way through Maratis when I realised that I actually want a different macro for Maratis, so only debug builds of the engine will even consider profiling but games can add profiling to whatever they want.

Anyway, no MGui output yet, just stdout for now, pastebin'd to give a quick idea
http://pastebin.ca/2108407

PS. I don't have a clue why it's giving <unprofiled> 1083546%