Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - Monsieur OUXX

#3461
Like others I agree that it's very (too much) ambitious to start a new engine from scratch.

I'd recommend to put more work into converters, like the limited one that exists for XAGE. It'd be cool if a game could be easily exported by its maker, to be played in other, stable engines targetting other platforms.

For instance:
- a web browser (using, for example, the engine shown earlier in this thread),
- Flash (with Lassie),
- XBox (using XAGE),
- etc.
#3462
Critics' Lounge / Re: This Magic Garden...
Wed 11/08/2010 10:50:12
Ali's makeover addresses most of the critics I wanted to express, especially the snow. Nice remix of the colors, too.

However, I still don't like the background. I'm ok it should stay simple, but IMHO it should be smoother.
#3463
Quote from: Mister L on Tue 10/08/2010 21:26:32
Hm, I don't have o dog.  :-\  ;)

Less forum-posting, more game-finishing.  ;)
#3464
Quote from: Sledgy on Tue 10/08/2010 10:13:20
I saw in Google about debug version of dll, but I didn't understand what is it and where I can get this dll. Seems, I must to install DirectX SDK?
I mean, you all can launch the game, so you did something for it?

IS it only the Debug verison of the game that needs the Debug DLL? Will the regular DLL work with a Compiled version of the game?
#3465
No pressure,
but if you don't finish that game I'll kill you, cut your ears and penis, eat them with mint sauce, rape your dead body, burn your house, rape your dead body again, kill your dog, cast a voodoo spell on your entire family for the next 25 generations. I also consider doing the same thing to your dog's dead body as I'd do with yours.

No pressure.
#3466
Quote from: theo on Mon 09/08/2010 22:36:54
Many of my backdrops use warm vs. cold lighting. It works every time.

You just opened my eyes. Never thought of that, but it's true the result is striking. My life will never be the same again!
#3467
it would be the equivalent of the keyword "super"* in other languages?

* (not when it's meant to represent a method, like when you write "super()" but when it's meant to replace "this", like when you write "super.Foo()").
#3468
Hints & Tips / Re: sync::routine
Mon 09/08/2010 10:49:12
Quote from: Monsieur OUXX on Mon 09/08/2010 10:43:47
Spoiler

... tried "ROPE" + "EASE" (and replaced the underlined letters with numbers) but it's not right.
[close]

My mistake, I was trying the wrong username.

For those who've read the spoiler above and are still looking for the password :
Spoiler

The 2 words can come in a different order!
[close]
#3469
Hints & Tips / Re: sync::routine
Mon 09/08/2010 10:43:47
Quote from: Jimbob on Sun 08/08/2010 12:29:08
Spoiler

The underlining should help you choose which words to use
[close]

That's what I thought, so I very confidently...
Spoiler

... tried "ROPE" + "EASE" (and replaced the underlined letters with numbers) but it's not right.
[close]
#3470
@dkh : May I inquire why you chose to program your own 3D engine instead of integrating, lets say, Ogre3D or Irrlicht?
#3471
MASK was massive in France, there was an avalanche of US merchandising toys. I had some of the second "mask" generation, after they pimped up the vehicles (with the missiles-luncher truck carrying a formula one), while my neighbour had some of the first generation (Venom's helicopter and that-guy's bike). Hours of fun! I still have them in my parent's house somehwere.




About the "Spiral zone", it was a strange cartoon with no real background, just guys fighting in a futuristic world/dimension. For some reason, the crappy French opening (http://www.youtube.com/watch?v=bblm30ydHT4) was imprinted forever in my brain (lyrics, music and all), as well as the monobikes, while I hated the rest of it.
#3472
General Discussion / Re: pixels galore
Fri 06/08/2010 14:43:28
Quote from: Gilbet V7000a on Fri 06/08/2010 14:40:21
I've made a similar background that is inaccessible

It's lucky you're not a real pimp, you wouldn't survive more than one minute on the streets ;-)
#3473
General Discussion / Re: pixels galore
Fri 06/08/2010 14:23:47
Quote from: LimpingFish on Thu 05/08/2010 01:07:31
A gallery of groovy colour-cycling backgrounds.

Oh my God. I've no idea how they do that. Even color cycle doesn't allow you to make the water oscillate, like the horizontal water in http://www.effectgames.com/demos/canvascycle/?sound=0
(well, that's what I believed until today!)

#3474
Yey, that's cool!

I'll have to re-read the source, I didn't spot how that was done (I'll find out by myself, no need to confuse the thread's readers) ;)
#3475
By the way, I've seen that you're looking for testers, I'll test the module if I can. It's always the main obstacle to release something clean.


I didn't quite get your example : why did you use an array of DynamicSprite* when there's already one in the module??? I thought only the UIDs would be needed by the scripter.
#3476
Quote from: monkey_05_06 on Thu 05/08/2010 12:08:04
that's not really a difference since you can create as many instances of the various List types as you want

Can you provide a snippet of how you create two lists of sprites?
Do you mean that you create two lists of Strings where you'll store the Uid's of the DynamicSprite*'s ?

In that case, yes, the result is similar. I'm working with int indices instead of String uid's. My goal is to have direct access to every single array or list. There's no conversion at any time.

The reason why I describe the similarities and differences is indeed not because of some sort of competition. It's because, so far, those paradigms were not addressed by any module. It's slowly starting :-) YEY!

Anyway. PEOPLE, YOU MAY NOT START SCRIPTING IF YOU'RE NOT USING MONKEY'S MODULE. Unless you like re-inventing the wheel, or suffering when managing your arrays.

I demand that this module is added to the "Modules" section  :)

#3477
Quote from: monkey_05_06 on Thu 05/08/2010 11:10:59
It's a secret, undocumented, built-in AGS value. In that version it was defined as 31998.

Haha, mine is defined as -32000. :-)))
Give 2 choices to 2 humans, they will never agree! :-D

I forgot to tell you : WELCOME BACK!
#3478
where's SCR_NO_VALUE defined? I can't find it. Well, who cares?

EDIT:
From what I saw, you basically mix 2 technologies :
- For ints and Strings, you use the good old stack module, that relies on Strings.
- For other data types, it's similar in concept to my module for lists of unmanaged structs: You have a unique, "static" array of pointers (in my case, it was an array of structs) that's stored inside the module, and the scripter uses fancy indices to items in this array.

...Correct me if I'm mistaken!



The difference lies here :
- Your code is very elegant (use of "this", and the use of a hashing system looks sexy), doesn't need to to be adapted to the use, and is super simple to use. Your system uses strong types.
- My code has to be duplicated but allows the handling of as many lists as wanted. Also, an item in a list can actually be another list. My system uses weak types, which makes it more flexible in some circumstances, but the scripter has to be careful.


How to chose?
- Your system covers 90% of uses and is ready to use.
- My system is required by perverts when they want some sort of homogenous "pointers" system, where the "pointers" can refer to any object of any type in any list (similar to scripts such as Javascript, etc.)
#3479
I enjoyed it a lot!
Thanks.

The article about The Lost Express is confusing -- it starts by saying that it was a commercial failure in 1979 :-D.
#3480
A pixel picture (also called bitmap, also called raster graphics image) -- as opposed to a vector image -- is, by definition, made of small squares (the pixels). They're here, whether you want it or not.

When the picture is zoomed out, you don't notice them too much.
When you zoom in, they become more visible.
--But, once again, they've been here all the time.

So, if I understand your question, you'd like to know what techniques you can use to soften their appearance when you strectch your sprites, which is basically the same thing as "zooming on a pixels picture". I'll talk about the case where you sue different values for horizontal and vertical stretching later.

It doesn't really matter whether you apply the technique onto one sprite (e.g. the character) or the whole picture. The question remains the same (even though, most of the time, because of technical difficulties, it's simpler to apply the "filter" only to the whole scene, not only to a few graphics in it -- for example the AGS setup offers you to apply the filters only to the whole game).

So, now, what are the techniques?
- Blur the zoomed image
- Distort the zoomed pixels and change their shapes so that they're not square anymore

1/ About blurring the image (anti-alisaing)
If you zoom on a pixels-image, the pixels will appear as being bigger, but will actually be made of "real pixels" that kept their original size (that is to say, the actual pixels of your screen).
For example, what used to be one single pixel in the original image, if you zoom x3, will become a square of 3x3 "real" pixels (i.e. 9 pixels) on your screen.
As you can see, you get additional pixels when you zoom a pixels-image.
Blurring the image consists of changing the color of some of the additional pixels, to smooth the transition to their neighbours. That's called anti-aliasing.

Here's an example :


2/ About filters that distort the pixels
I wrote that a zoomed pixel is rendered as a bigger square (1 pixel --> zoom x3 --> a square of 3x3 pixels).
But you don't have to make it a square. For example you can make it 2 small triangles. And you can slightly alter the colors of each triangle to make it fit the color of the neighbours.

Code: ags

[X]          -->        [X][X][X]            -->         [1][1][2]
                        [X][X][X]                        [1][2][2]
                        [X][X][X]                        [2][2][2]

single                    zoomed                        2 triangles
 pixel                     pixel                         (1=triangle #1
                         (square)                        2=triangle #2)

Here's an example :

If you look cloesly you'll see the sall triangles in the lower picture. Thaqt explains why horizontal, vertical and diagonal lines are rendered perfectly, but all other angles are awkward -- and cause rectangles to apear as "rounded".

How can I use those filters?
- If you decide to apply the filter to the whole picture, then use the AGS setup.
- If you want to use an elaborate filter or apply it only to part of the picture, then you must use an external plugin or a module. I'll let other forumers tell you what's available. For example, Calin Leafshade has been working on interseting graphical effects lately. the main issue is that those filters slow down your game a lot.


What if I use a different scaling factor for width and height?
There's no magic solution.
- Blurring the zoomed image will hide the defect, but is... well... blurry. there is obvious quality loss.
- Using the second technique I detailed won't remove the problem, but the result is so eye-candy that you won't really notice it anymore.


And yet another over-detailed answer ;-)
SMF spam blocked by CleanTalk