Main
Tetris classic
Last Updated on Thursday, 27 October 2011 19:08 Written by GRaven Sunday, 23 October 2011 19:31
Tetris classic
EDIT : Nepojmenovávejte žádnou hru TETRIS, zakážou jí. :)
Pro potřeby kratšího vysvětlení, jak vytvořit jednoduchou hru, jsem pro potřeby BC práce napsal Tetris.
Zdrojové kódy dodám až popíšu bakalářku.
Pro ověření funkčnosti jsem hru nahrál na Android market. Můžete ji stáhnout a pak mi napsat komentář a připomínky.



FPS pro začátečníky
Last Updated on Tuesday, 29 November 2011 07:35 Written by GRaven Sunday, 23 October 2011 19:15
Tak a jsem zpět.
Jelikož každý začínající tvůrce potřebuje měřit FPS a případně i FPS omezit, tak se s vámi podělím o velice jednoduchý způsob jak na to.
Testováno pouze pro vykreslování na Canvas. :)
Použití je jasné :
- Vytvořte si instanci třídy a jako parametr dejte maximální FPS.
- Následně ve vykreslovací části (onDraw) volejte frame(). frame() má jako návratovou hodnotu dobu mezi jednotlivými snímky pro toho kdo potřebuje.
- getFPS vrátí předpokládané fps podle aktuálního průběhu.
- getWait() vrací počet ms o kolik by se mělo vykreslování zpožďovat aby se dosáhlo cíleného fps. Zpoždění proveďte Thread.sleep(fpscounter.getWait())
To je tak vše. :)
v0.3 - přidáno avg FPS
public class FPScounter {
private long start, stop, help, nanosecond;
private double fps;
private int target_fps, frames;
private long wait;
private long second = (long) Math.pow(10, 9);
private int max,min,avg,snimku,long_fps_s;
public FPScounter(int fps) {
target_fps = fps;
wait = 1;
}
public long frame() {
frames++;
stop = System.nanoTime();
help = stop-start;
start = stop;
nanosecond += help;
if(nanosecond >= second) {
frames = 0;
nanosecond = 0;
if(target_fps > 0) {
if(fps > target_fps) wait+=2;
else if(wait > 2) wait-=2;
}
}
return help;
}
public double getFps() {
if(nanosecond != 0) {
fps = frames/((double)nanosecond/second);
if((int)fps > max) max = (int)fps;
if((int)fps < min) min = (int)fps;
long_fps_s += fps;
snimku++;
avg = (int)((long_fps_s)/(double)snimku);
}
return fps;
}
public long getWait() {
return wait;
}
//get - set si doplnte :)
}
MOSFET do AEG
Last Updated on Friday, 10 June 2011 07:40 Written by GRaven Friday, 10 June 2011 05:38
Jelikož jsem občasným hráčem airsoftu a rád si upravuju mají plastovou MP5, tak jsem se rozhodl si postavit MOSFETové spínání aniž by mě to stálo jakékoliv peníze.
Důvody
- Plán výměny pružiny M110 za M130
- Plán výměny motoru za silnější
- Výměna 8.4V 1500mAh a 9.6V 2000mAh baterií za 11.1V 2200 mAh Li-Po beterie
Kde najít MOSFET:
Najít v dnešní době MOSFET je jednodušší než by se mohlo zdát. Není potřeba kupovat za stovky kč nový MOSFET v GM. Tento spínací prvek se dá najít v mnoha kusech starší elektroniky a to včetně vadných PC zdrojů nebo i základních desekách. K nalalezení potřebného kousku stačí bistré oko a google. V datasheet se zaměřte na hodnotu špičkového proudu, stálého proudu a napětí. Napětí samozřejmě ideálně trochu větší naž dá baterie. Bylo by dobré mít hodnotu max stálého proudu větší než je maximální proud z baterie aby nedocházelo k přetěžování při roztáčení motoru. Roztáčející motor si vezme téměř tolik, kolik dá baterie.
Montáž:
Samotná montáž není těžká. Doporučuji postupovat podle tohoto schématu z webu AirsoftMechanics.com:

Jak vidíte, tak si vystačíte s MOSFETEM, dvěma odpory a několika vodiči. Černý a červený vodiče by měly být dimenzované na max proud. Já použil vodiče z PC zdroje, ze kterého mám i mosfet. Zelený může být tenčí jelikož tudy netečou takové proudy. Jakmeli na MOSFET napájíte vodiče, tak bude potřeba spoje ochránit. K tomu mi skvěle posloužila tavná pistole. Jen nechte zadní stenu MOSFETU odkrytou ať se lépe chladí. Pak už zbývá jen zakomponovat do zbraně a hurá na akci.
V případě dotazů je pište do komentářů a já tuto spatlaninu upravím.
More Articles...
Page 1 of 4


