kottore / away3d

Automatically exported from code.google.com/p/away3d
0 stars 0 forks source link

TextField3D render problems, text overwrite problem, and crashes #52

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
What steps will reproduce the problem?
1. Create TextField3D object and apply ColorMaterial
2. Create Trident
3. Add both to scene
4. Every frame, change the text property of TextField3D object

What is the expected output? What do you see instead?
a) Severe rendering problems, similar to Issue 49.  (Extraneous shapes
rendered to the right of the TextField3D object, depending on view angle.)
b) Run-time crash: TypeError: Error #1009: Cannot access a property or
method of a null object reference. At away3d.core.base::Geometry/removeFace()

What version of the product are you using? On what operating system?
Away3D trunk as of 9 Aug 2009 (rev 1594).
Flash CS3 IDE.
FP9.
XP SR3.

Please provide any additional information below.

a) See attached renderBug1a.fla and renderBug1a.swf.

b) Run time error seems to be related to changing the text property. Does
not crash on every text change - seems to depend on the new string somehow.

c) Rendering errors seem to be related to use of ColorMaterial and FP9. 
Renders OK with FP10.

d) Script fragments follow:

var yellowTextMaterial:ColorMaterial = new ColorMaterial(0xFFFF00);
var textfield:TextField3D = new TextField3D("Arial",
{material:yellowTextMaterial, text:"Hello!", size:100, leading:500,
kerning:0, textWidth:100000, align:"TL"});
function onEnterFrame(event:Event):void {
    frameCount++;
    var str = "frameCount = "+frameCount;
    textfield.text = str;
}

e) Crash output details follow:

TypeError: Error #1009: Cannot access a property or method of a null object
reference.
    at away3d.core.base::Geometry/removeFace()
    at away3d.core.base::Mesh/removeFace()
    at away3d.primitives::AbstractPrimitive/buildPrimitive()
    at away3d.primitives::TextField3D/buildPrimitive()
    at away3d.primitives::AbstractPrimitive/updatePrimitive()
    at away3d.primitives::AbstractPrimitive/get geometry()
    at away3d.core.traverse::ProjectionTraverser/apply()
    at away3d.core.base::Object3D/traverse()
    at away3d.containers::ObjectContainer3D/traverse()
    at away3d.containers::Scene3D/update()
    at away3d.containers::Scene3D/onUpdate()
    at flash.events::EventDispatcher/dispatchEventFunction()
    at flash.events::EventDispatcher/dispatchEvent()
    at away3d.containers::View3D/notifySceneUpdate()
    at away3d.containers::View3D/render()
    at renderBug1a_fla::MainTimeline/onEnterFrame()

Original issue reported on code.google.com by ralph%sa...@gtempaccount.com on 9 Aug 2009 at 9:51

Attachments:

GoogleCodeExporter commented 8 years ago
I think I fixed this one.
Li

Original comment by paleblue...@gmail.com on 18 Aug 2009 at 9:15