Hi Kelvin,

That's a nice workaround (resampling the bitmap every frame), but
unfortunately has it's drawbacks. That will only work well (and can only be
calculated) on a flat plane facing perfectly forward. On any other (and
most) of the primitives and 3D objects it won't be as effective.

It would be a nice addition as a material for a flat forward facing plane.
Unfortunately your problem still boils down to Flash not being able to down
sample pleasantly, and you would need to find a custom solution the same as
if you didn't use Away3D, and just plain Flash.

Please keep in mind, Away3D is not rescaling the bitmap everyframe, it is
being kept the same size as the source, even if it is far away from the
camera. It is exactly the same as you scaling down a bitmap in Flash by
itself.

I wonder why Adobe doesn't do something about it. Flash would deliver much
better graphical quality if they did.

-Pete

On Thu, Oct 15, 2009 at 8:29 AM, Kelvin <[email protected]> wrote:

>
> Hi Peter,
>
> Thanks for your reply.
>
> The texture that we are handling is acutally not being re-scaled at
> all on Away3d. It is 1:1.
>
> However, I guess when away3d sets the camera and render, it uses
> certain flash functions such as beginBitmapFill that adopts nearest
> neighbour for down sampling. The problem seem to be, if a 3d object is
> further apart from the camera, Away3d is effectively rescalling the
> texture as it draws output on screen.
>
> Understand that Away3d can also use bitmapData.draw() for rendering, I
> wonder if there is a away to replace the core "re-scaling for render"
> function in Away3d to some codes that adops bilinear down sampling
> similar to the site below.
>
> http://www.brooksandrus.com/blog/2009/03/11/bilinear-resampling-with-flash-player-and-pixel-bender/
>
> It seems to me like it is about relplacing bitmapData.draw()  with the
> below codes?
>
> ----------------------------------------------------------------------------------------------------------------------------
> var temp:BitmapData = new BitmapData( sourceWidth, sourceHeight );
> temp.draw( source );
>
> var output:BitmapData = new BitmapData( outputWidth, outputHeight )
> var matrix:Matrix = new Matrix();
> matrix.scale( outputWidth / sourceWidth, outputHeight /
> sourceHeight );
> output.draw( temp, matrix, null, null, null, true );
> temp.dispose();
>
> ----------------------------------------------------------------------------------------------------------------------------
>
> Any guidance is appreciated.
>
> Cheers
> Kelvin
> p.s. my fellow developer helped me post the original questions.
>
>
>
>
> On Oct 10, 11:28 pm, Peter Kapelyan <[email protected]> wrote:
> > Hi Kelvin,
> >
> > Sorry about your problems, however this is not Away3D's fault at all.
> >
> > If you try your experiment with just Flash (not Away3D) you will notice
> the
> > same thing. This is a flaw of the Flash software.
> >
> > You have a couple of options in Flash, and the same applies to Away3D.
> >
> > A few ideas are:
> >
> > 1. You can use a much smaller texture, up scaling works much better than
> > down scaling.
> >
> > 2. You can blur your texture a bit
> >
> > 3. Your best option is to use the same texture dimensions you would
> expect
> > to see at 100%.
> >
> > Hope it helps you
> >
> > -Peter
> >
> >
> >
> >
> >
> > On Sat, Oct 10, 2009 at 5:57 AM, vkt <[email protected]> wrote:
> >
> > > Hello,
> >
> > > We are experiencing problem applying texture in small fine strips and
> > > checks.
> >
> > > Those images has been prepared to proper scale for direct application,
> > > but the Away3d outputs often carries significant down-sampling
> > > artifacts.
> >
> > > Smooth has been set to true. We have also not done anything with
> > > scale. But it still looks like as if Away3d is down-sampling with
> > > Nearest Neighbor.
> >
> > > Appreciate any thoughts.
> >
> > > here some link about my quesion.
> > >http://www.xs4all.nl/~bvdwolf/main/foto/down_sample/down_sample.htm<http://www.xs4all.nl/%7Ebvdwolf/main/foto/down_sample/down_sample.htm>
> <http://www.xs4all.nl/%7Ebvdwolf/main/foto/down_sample/down_sample.htm>
> >
> > > Thanks
> > > Kelvin
> >
> > --
> > ___________________
> >
> > Actionscript 3.0 Flash 3D Graphics Engine
> >
> > HTTP://AWAY3D.COM
>



-- 
___________________

Actionscript 3.0 Flash 3D Graphics Engine

HTTP://AWAY3D.COM

Reply via email to