Find Jobs
Hire Freelancers

Complex java applet to Actionscript 3 port

$500-5000 USD

Cerrado
Publicado hace casi 15 años

$500-5000 USD

Pagado a la entrega
I need a coder, mathematically minded, and expert in Actionscript 3 and Java to port a 3d realtime software renderer, written in Java to Actionscript 3. The renderer is a VERY complex piece of code, (almost certainly more complex than anything you've seen before) and uses complex bit shifting, mathematical tricks and other optimizations, in order to run as fast as possible. The port would need to be done with speed in mind throughout, and use the new native int types and Vectors available in the Flash Player 10. ## Deliverables Here is a small sample of the java code to be ported. This function is related to antialiased texture mapping. ------------------------ ? ? //Multisample inner point (not near edge, all MS points valid) ? ? ? //Does 1 sample, 16 samples, or 1 bilinear ? ? ? //Includes alpha, top bit may be set depending on return path ? ? ? final int MultiSampleSlot1_16(int[] texture, boolean AllowFastRejectRadius) ? ? ? { ? ? ? ? ? while(iCurrentU216>=stw)iCurrentU216-=stw; ? ? ? ? ? while(iCurrentU216<0)iCurrentU216+=stw; ? ? ? ? ? while(iCurrentV216>=sth)iCurrentV216-=sth; ? ? ? ? ? while(iCurrentV216<0)iCurrentV216+=sth; ? ? ? if (AllowFastRejectRadius) { int iPos = (iCurrentV216 >> Mip16_1) * tw + (iCurrentU216>>Mip16_1); if (iPos < 0 || iPos >= m_MipPixelsTotal1) return texture[0]; //oob int iPointSample = texture[iPos]; int iBlankRadius = (iPointSample & 0x7f000000 ) >>> 24; //unsigned iBlankRadius <<= (Mip16_1-16); if (PixelBBox_s1_int < iBlankRadius) ? ? ? ? ? ? //assuming 1 extra distance from the bilinear bit, and no bilinearing (if pass) { //if ((iPointSample & 0x80000000) == 0) //no normal map needed, none of the MS points hit non-flat normal return iPointSample; //nobilinear needed //return GetBilinearSlot1(texture); } ? ? ? ? ? } if ([login to view URL] && Renderer.m_bShowMS) { if (m_bDrasticOverSampling) return 0x7fff80ff; //pink for bilinear else return 0x7f0000ff; //blue = MS tex } if (m_bDrasticOverSampling) { return GetBilinearSlot1(texture); } ? ? ? ? ? int AccAG=0; ? ? ? ? ? int AccRB=0; ? ? ? ? ? int yscanu = dudyBy4_rot - (dudxBy4_rot<<2); ? ? ? ? ? int yscanv = dvdyBy4_rot - (dvdxBy4_rot<<2); /* ? ? ? ? if (always in bounds) { for (int iy=4;iy>0;iy--, iU16 += yscanu, iV16 += yscanv) { for (int ix=4;ix>0;ix--,iU16 += dudxBy4_rot,iV16 += dvdxBy4_rot) { c=texture[(iV16>>>Mip16_1)*tw + (iU16>>>Mip16_1)]; AccAG += (c & 0x7f00ff00)>>4; AccRB += ? c & 0x00ff00ff; } } } else */ ? ? ? ? ? { ? ? ? ? ? ? ? int iU16 = iCurrentU216 + iTopCornerOffsetU_rot; ? ? ? ? ? ? ? int iV16 = iCurrentV216 + iTopCornerOffsetV_rot; for (int iy=4;iy>0;iy--, iU16 += yscanu, iV16 += yscanv) { for (int ix=4;ix>0;ix--,iU16 += dudxBy4_rot,iV16 += dvdxBy4_rot) { ? ? ? ? ? ? ? ? ? ? ? while(iU16<0)iU16+=stw; ? ? ? ? ? ? ? ? ? ? ? while(iU16>=stw)iU16-=stw; ? ? ? ? ? ? ? ? ? ? ? while(iV16<0)iV16+=sth; ? ? ? ? ? ? ? ? ? ? ? while(iV16>=sth)iV16-=sth; int c, ind = (iV16>>>Mip16_1)*tw + (iU16>>>Mip16_1); if (ind < 0 || ind >= m_MipPixelsTotal1) c=texture[0]; ? ? //oob else c=texture[ind]; AccAG += (c & 0x7f00ff00)>>4; AccRB += ? c & 0x00ff00ff; } } } ? ? ? ? ? return ((AccRB >> 4) & 0xff00ff) | (AccAG & 0x7f00ff00); ? ? ? } ? ?
ID del proyecto: 2801905

Información sobre el proyecto

3 propuestas
Proyecto remoto
Activo hace 15 años

¿Buscas ganar dinero?

Beneficios de presentar ofertas en Freelancer

Fija tu plazo y presupuesto
Cobra por tu trabajo
Describe tu propuesta
Es gratis registrarse y presentar ofertas en los trabajos
3 freelancers están ofertando un promedio de $2.904 USD por este trabajo
Avatar del usuario
See private message.
$4.037,50 USD en 14 días
5,0 (92 comentarios)
6,9
6,9
Avatar del usuario
See private message.
$2.550 USD en 14 días
4,7 (18 comentarios)
5,8
5,8
Avatar del usuario
See private message.
$2.125 USD en 14 días
5,0 (5 comentarios)
4,4
4,4

Sobre este cliente

Bandera de UNITED KINGDOM
United Kingdom
0,0
0
Miembro desde abr 27, 2005

Verificación del cliente

¡Gracias! Te hemos enviado un enlace para reclamar tu crédito gratuito.
Algo salió mal al enviar tu correo electrónico. Por favor, intenta de nuevo.
Usuarios registrados Total de empleos publicados
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Cargando visualización previa
Permiso concedido para Geolocalización.
Tu sesión de acceso ha expirado y has sido desconectado. Por favor, inica sesión nuevamente.