BROO's Forum Posts

  • If you use Sprite to render this counter:

    Try putting Pivot Point in the top-left corner

    If you use Box for example named MyBox or any other object:

    I'd recommend using Sprite showing bar when full

    But you can also always set this MyBox's X position. Let's say Box's starting X position is stored in value ('startX') and starting width in value ('startWidth'). Then in events you can make:

    Event #1:

    Conditions:

    -> Always (every tick)

    Actions:

    -> MyBox . Set X Position to: MyBox('startX') - (MyBox('startWidth') - MyBox.Width) / 2.

    Maybe there are more optimal solutions but I don't mind wasting 1000 CPU cycles per frame ^^.

  • It's not art, but I used to draw in mspaint.

    http://tymczasownik.republika.pl/bbb.gif

    It's my friend ^^.

    http://tymczasownik.republika.pl/planty.gif

    Part of Cracow, so-called "Planty" because of grass and plants and trees and tourists and stuff .

    http://tymczasownik.republika.pl/osadnica16.gif

    Osadnica ("Miss Settler"). This was drawn because someone used wrong context for the noun Osadnicy ("Settlers"). Apparently this noun in plural form, masculine, nominative case is written the same way as this noun in singular form, feminine, genitive case... hahaha! Hope you enjoyed my intellectual joke... really.

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • You must put "ELSE" as a different Event.

    For example, if you want to accomplish something like this:

    if ( MyObject('myVariable') == 12)

    DoSomething;

    else

    DoAnotherThing;

    You have to prepare such events:

    Event #1:

    Conditions: MyObject('myVariable') is equal to 12

    Actions: DoSomething

    Event #2 (right below Event #1)

    Conditions: ELSE

    Action: DoAnotherThing

    When you use "OR" then OR is just withing the same event. But when you are using "ELSE", this "ELSE" must be a seperate event. What is more, this "ELSE" event must be put right below event you want to have else-d. You'll notice a line connecting Event #1 and "ELSE Event" - this line shows which event the "ELSE Event" is referencing to.

  • 1. You can use "Text" objects for numeric counters. If you want to make other counters (h/v bar, animated etc.) you should check out Canvas' methods for drawing.

    2. They are equal.

    3. Too busy, sorry ^^. Anyways my first impression tells that in Construct you'll have to care more about starting/stopping animation manually.

  • Update:

    Graphicians... well, Graphic Artists ^^.

    And as for music/sound: apparently we're looking for Sound Effects Designers.

  • Hi,

    We're working on 2d remake of the Metroid series. Our devblog: http://metroidalphahatch.blogspot.com/

    Here are few concept arts of our project:

    http://img353.imageshack.us/img353/6848/metroidalphahatchsamusgpu9.jpg

    Samus and her Gunship

    http://img391.imageshack.us/my.php?image=samusbiegniewlewotest2big0.gif

    Samus running

    http://www.box.net/shared/rej5nh3xt0

    Recent Samus running animation (MOV)

    http://img296.imageshack.us/img296/5262/metroidruinstileset1tesul9.jpg

    Ruins

    http://1.bp.blogspot.com/_IpOtX5amGA8/SO_BTb0WgyI/AAAAAAAAABg/aHgZ_8fwC68/s1600-h/screen1.jpg

    Save Station

    We'll complete first platform movement engine shortly. This game will be a tough approach but we're quite experienced creators ^^.

    We're looking for programmers (Construct), graphicians and music/sound makers. If you'd like to join, let us now.

  • You could use "round" or "int" (int'd floor it).

    Last event:

    round(1000*sin(int(EditBox.Text))) / 1000[/code:1d78ex69]
  • <img src="http://i134.photobucket.com/albums/q113/Mai_Dang_Alex/megafacepalmzc4.jpg">

    SoldJah could you make it 1600x1200?

  • Right now I've been thinking about all the year that klik community tried to make some 3D engines in MMF programs. Here everything looks so easy ^^.

  • AFAIR applying effects isn't possible in runtime. I'm afraid we should be careful not to put too much conditions/expressions, because even now Sprite's condition list is large. If something can be handled with single PV - why not work this way?

  • That's another flame attack ^^.

    <img src="http://i177.photobucket.com/albums/w226/emorock09/rage.jpg">

  • I don't have that much theorethical knowledge, but I know that negative frequencies don't have representation in real world, althought they're part of it. If you think about electrical stuff alternating current: it has its Real and Imaginary part. Only te Real part is useful, but they both are vital to describe the current.

    Similar situation is with FFT. Normally FFT algorithms does output array of Complex Numbers (this conversion I shown in 3 posts above is shortcut: Real->Complex conversion and Complex.Abs() conversion put together). You can do IFFT (Inverted FFT) only when giving output array of Complex Numbers containing both positive and negative frequencies.

    To put it simply: negative frequencies aren't useful for you, but when trying to get FFT^-1 function, you need them.

    [quote:30aw7lup]I just began to wonder if it is possible to combine the frequencies afterwards and input them back to XAudio2 . I was thinking some kind of controllable equalizer...

    IFFT would theorethically do that (available in FFTW as well). Anyway I haven't seen anybody implementing such functionality.

    Edit:

    ...Well actually Winamp's Eqaualizer does something like this ^^.

  • Aiosf Raamao Hungjblun!

    Sorry for Nuboadi ^^.

  • Method for making FFT

    FFTW has functions to which you have to pass:

    input buffer

    output buffer

    number of samples

    (and some other flags for optimalization and stuff).

    If you happen to retrieve pointer to XAudio2 buffer, you'll have to create your Output memory buffer. FFTW operation will populate the Output buffer with calculated Fourier Transformation.

    There are some ways (AFAIR in FFTW it's called kinds) of getting output data buffer. I'll explain it on example later in this post.

    Accessible frequencies depend on amount of probes you pass in Input Buffer. If you pass 8192-element Input Buffer, you'll get frequencies from -4095Hz to 4096 Hz. Then in order to get 20kHz spectrum you'd probably want to pass 40000 elements buffer. Since processing 2^N sized arrays is better, I recommend 65536 elements sized arrays to get -32767Hz to 32768Hz.

    Don't worry about working with transfering data, retrieving and stuff, it'll be done within 10msec for sure.

    And how to know which table indexes are the positive and negative frequencies? Well it depends on KIND of getting output data.

    Sample of usage:

    Let's say you want frequencies 1..8Hz. You have then to pass Input Buffer array of 16 float numbers. Then, you have to prepare memory for Output Buffer: it'll be array of 16 float numbers. FFTW works like this:

    retrieve/malloc Input/Output buffers

    select PLAN you want to do (as for us it'll be fftw_plan fftw_plan_r2r_1d(int n, double *in, double *out, fftw_r2r_kind kind, unsigned flags);

    execute PLAN

    free memory

    When you execute plan, your Output array will be probably populated with such points ( x(n) = amplitude at n Hz freq):

    x(0), x(1), x(2), x(3), x(4), x(5), x(6), x(7), x(8), x(-7), x(-6), x(-5), x(-4), x(-3), x(-2), x(-1). So get rid if last 7 elements and you get what you're interested in.

    If XAudio2 would have "get pointer to buffer" expression, then everything should be all right. And if you're going to make 0..20kHz in few bars like in Winamp, you'll have to sum/average parts of array.

  • Fourier transformation is needed, that's for sure. How to achieve it and make it fast at once? "Normal" Fourier Transformation algorithm uses O^2, and Fast Fourier Transformation uses n*log2(n). I can recommend getting FFTW:

    one of the fastest FFT algorithms - see benchmark results (and one sample to let you know which one to check)

    deals with non 2^N arrays of probes (but takes more time then)

    open source, free for noncommercial use

    AFAIR written in ANSI C

    support for optimalization of FFT-ing signal (but I don't think this would be useful in non-industrial use)

    AFAIR applications like Winamp uses FFTW to make spectrum analysis.

    The only problem is how to access XAudio2's pointer to actually played buffer. And I don't know how many samples are taken to analysis every "frame" (maybe 1k?). Anyways, FFTW deals with 2^19 samples in about 100ms.