0 Members and 1 Guest are viewing this topic.
While IDisp "OEnd
:If EXP:1->A:End
:If EXP:->A:End
:EXP->A
Hey thats ok Sometimes this optimization works even if there is a difference ^^Welcome to Omnimaga too! It's nice to see another Axe user around here Why don't you make a post in the Introduce Yourself page so we can all give you a proper peanut filled welcome
Question mark!0-A->B->C->D.....->Z->0to0->{l1-56}fill(l1-56,56)
0→A→B→X→Y→{L₁}ʳ
0→{°A}ʳFill(°A+1,52)
ᴇ1337→{°A}ʳCopy(°A,+2,52)
Pre-evaluating expressions: Especially in games that heavily reference arrays throughout a section of code, it is often good both for speed and memory to pre-evaluate expressions that do not change throughout the loop. Look at this code for drawing a scrolling 16x16 tilemapper with X and Y positions in pixels: Code: [Select]For(A,0,7)For(B,0,11)If {Y/8+B*16+(X/8)+A+L1}Pt-On(A*8-(X^8),B*8-(Y^8),{Y/8+B*32+(X/8)+A}*8+Pic0EndEndEndThere is a HUGE speed gain from simply preevaluating some of the expressions before entering the loop:Code: [Select]X/8->EY/8->FX^8->IY^8->JFor(A,0,7)For(B,0,11)If {F+B*16+E+A+L1}->CPt-On(A*8-I,B*8-J,C*8+Pic0EndEndEnd
For(A,0,7)For(B,0,11)If {Y/8+B*16+(X/8)+A+L1}Pt-On(A*8-(X^8),B*8-(Y^8),{Y/8+B*32+(X/8)+A}*8+Pic0EndEndEnd
X/8->EY/8->FX^8->IY^8->JFor(A,0,7)For(B,0,11)If {F+B*16+E+A+L1}->CPt-On(A*8-I,B*8-J,C*8+Pic0EndEndEnd
X/8->EY/8->FX^8->IY^8->JFor(A,0,7)*8-I->GFor(B,0,11)If {F+B*16+E+A+L1}->CPt-On(G,B*8-J,C*8+Pic0EndEndEnd
X/8->EY/8->FX^8->IY^8->JFor(A,0,7)*8-I->GFor(B,0,11)If {+F*16+E+A+L1}->CPt-On(G,B*8-J,C*8+Pic0EndEndEnd