Página 1 de 1

GMS1.4.x: preciso de ajuda para converter 1 codigo

Enviado: Seg Dez 11, 2017 2:20 pm
por Cambalinho
eu estou a tentar converter um codigo, para evitar esta função:
    ///scr_vb_ring_add_vert( _i, _j, _r1, _r2, _colour );
    var _ci = dcos(argument0), _si = dsin(argument0), _cj = dcos(argument1), _sj = dsin(argument1); 
    //position
    vertex_position_3d( vb_ring,
         _ci * (_cj * argument3 + argument2),
        -_si * (_cj * argument3 + argument2),
         _sj * argument3
    );
    vertex_normal( vb_ring,  _ci * _cj,  -_si * _cj,  _sj  );  //normal vector
    //vertex_float3( vb_ring, _si, _ci, 0 );  //tangent vector
    vertex_texcoord( vb_ring, argument0 / 360, 1 - argument1 / 360 );  //texture coordinate
    vertex_colour( vb_ring, argument4, 1 );  //color
então eu fiz desta linha:
for(var i = 0; i < 360; i += _si) {
        for(var j = 0; j < 360; j += _sj) {

scr_vb_ring_add_vert(i+_si, j,     _r1,_r2,_colour); 
para:
for(var i = 0; i < 360; i += _si) {
        for(var j = 0; j < 360; j += _sj) {
 
            //scr_vb_ring_add_vert(i+_si, j,     _r1,_r2,_colour);  //triangle 1, vertex 1
            var _ci = dcos(i+_si), _si = dsin(i+_si), _cj = dcos(j), _sj = dsin(j);
            //position
            vertex_position_3d( vb_ring,
                 _ci * (_cj * _r2 + _r1),
                -_si * (_cj * _r2 + _r1),
                 _sj * _r2
            );
            vertex_normal( vb_ring,  (_ci * _cj),  (-_si * _cj),  _sj  );  //normal vector
            //vertex_float3( vb_ring, _si, _ci, 0 );  //tangent vector
            vertex_texcoord( vb_ring, (i+_si) / 360, (1 - j) / 360 );  //texture coordinate
            vertex_colour( vb_ring, _colour, 1 );  //color
            scr_vb_ring_add_vert(i,     j,     _r1,_r2,_colour);
eu não obtenho erro de sintaxe, mas erro antes de concluir a compilação mostra 1 caixa de mensagem: "Out of Memory" com titulo "Fatal Memory Er...".
o que fiz de errado na conversão?