[Papervision3D] BitmapMaterial on single segmented plane -Texture Distortion?
Aaron McCaffery
lists at ignitemedia.com.au
Sun Mar 4 21:11:27 EST 2007
Hi guys,
PV3D is getting a lot of people quite excited about the possibilities
of finally recreating cubic VR panos in Flash. There is still this
texture-mapping hurdle, though...
I've been talking a few people about linear texture mapping in
relation to cubic VRs, and we've concluded that the distortions are
just too noticeable to be practical for commercial projects. Sure,
they can be minimised by increasing the number of segments per face,
but they will never be 100% accurate using the current method. See
<http://clients.ignitemedia.com.au/papervision3d/wireframe_cubicVR/>
for reference; maximise the window and look closely at the lines as
they pass off of the left/right hand sides of the screen. See the zig-
zag effect?
If this issue could be resolved, I think we could officially say that
Flash finally has cracked the VR nutshell!
Any thoughts, or am I flogging a dead horse here?
P.S. For further reference on the texture mapping distortion: http://
clients.ignitemedia.com.au/papervision3d/bitmapMaterialTest/
Cheers!
Aaron McCaffery
Interactive Designer
Ignite Media
www.ignitemedia.com.au
On 05/03/2007, at 4:50 AM, jakelewis wrote:
>
> The algorithm of perspective texture mapping is only a little
> slower ( say
> 20%) than that for linear. The difference in PV3D case is that
> linear is
> already coded in Flash Player whereas perspective would need to be
> coded in
> ActionScript by PV3D. This has been tried already by others and
> proves to be
> very much slower (say 500%).
> Flash Player achieves this by coding right down to the silicon - it
> will run
> different, highly optimized, code depending on Intel, AMD, or
> whatever CPU
> is on client. AS3, although vastly faster than AS2, is never going to
> achieve this speed.
>
> In a nutshell, with linear mapping the texture is only guaranteed
> to be
> correct at the corners of each drawn triangle, so, for PV3D, by far
> the
> easiest way to emulate perspective correct mapping is to subdivide
> the faces
> so that there are more of these correct corners, and
> correspondingly shorter
> distances between them for the linear distortion to show itself.
>
> So just build the panorama's box with more triangles - ( but no too
> many or
> it'll lose framerate )
>
>
> Regards, Jake
>
> -----Original Message-----
> From: Papervision3D-bounces at osflash.org
> [mailto:Papervision3D-bounces at osflash.org]On Behalf Of Aaron McCaffery
> Sent: Sunday, March 04, 2007 4:38 AM
> To: Papervision3D at osflash.org
> Subject: Re: [Papervision3D] BitmapMaterial on single segmented plane
> -Texture Distortion?
>
>
> Hi guys,
>
> Yeah, I suspect that the flashpanorama.com player would be subject to
> the same problem. Note that the only examples of straight
> architectural lines displayed in their player are shown in the low-
> res panos at <http://flashpanoramas.com/player> where the distortion
> is much harder to detect (although it is there if you look hard),
> however the fullscreen version ( <http://flashpanoramas.com/player/
> test/hotspots_window.html> ) is more 'organic' and doesn't show any
> hard straight edges that would expose the flaws in the engine. I
> reckon that if you implemented a graphical grid in the fullscreen
> player like my example ( <clients.ignitemedia.com.au/papervision3d/
> bitmapMaterialTest/> ), the distortion would become much clearer.
>
> What David R says makes a lot of sense; I can see that perpective-
> correct mapping would require more processing. However, is it worth
> considering adding functionality that allows the texture mapping to
> be switched between linear and perspective-correct mapping, or is it
> just not feasible performance-wise?
>
> I understand that most implementations of PaperVision3D would find
> linear mapping quite sufficient, but for applications requiring more
> exact precision is there another way?
>
> Cheers!
>
> Aaron McCaffery
> Interactive Designer
> Ignite Media
> www.ignitemedia.com.au
>
>
>
>
> On 04/03/2007, at 5:07 PM, stephen white wrote:
>
>> On 04/03/2007, at 3:19 PM, David Rorex wrote:
>>> I believe this is because pv3d does linear texture mapping (or
>>> something), because in order to do perspective-correct mapping, it
>>> takes a lot more processing, and pv3d was designed to be fast.
>>
>> This product doesn't have any real visible distortion when rotating
>> textures around a perspective projection:
>>
>> http://flashpanoramas.com/player/
>>
>> It did mention something about dividing textures into 50 segments,
>> which I couldn't understand at all. Your explanation makes sense of
>> that claim, so I suspect you're right.
>>
>> So perhaps taking the same approach with PaperVision might work...
>> divide it up a lot!
>>
>> Steve.
>>
>> --
>> steve at adam.com.au
>>
>>
>>
>> _______________________________________________
>> Papervision3D mailing list
>> Papervision3D at osflash.org
>> http://osflash.org/mailman/listinfo/papervision3d_osflash.org
>>
>
> _______________________________________________
> Papervision3D mailing list
> Papervision3D at osflash.org
> http://osflash.org/mailman/listinfo/papervision3d_osflash.org
>
>
>
>
> _______________________________________________
> Papervision3D mailing list
> Papervision3D at osflash.org
> http://osflash.org/mailman/listinfo/papervision3d_osflash.org
>
More information about the Papervision3D
mailing list