Why I use TImageTextureNode SetTexture dropped the Texture before release I don't want it Texture of before release But direct replacement So I can avoid repeated LoadFromImage save CPU time Ask for help

Code:
TAppearanceNode(TShapeNode(MianShape.Node).Appearance).Texture:=TileTex[Random(19)];

I’m sorry, I do not understand this question. Can you please explain it better :

  • be more verbose, explain what you do, what doesn’t work (or is not optimal)? Ideally, the forum thread title should be just a 1-sentence summary but you can use the post description to provide more information.

  • add a complete testcase to demonstrate the problem?

Thank you!

  • I just want to draw pictures within the scene and I don’t want to do this with a complicated set of X3DRootNode.AddChildren(Shape) and I want to do this by myself in the scene by laying the tiles according to the coordinates and by switching textures to achieve the dynamic image effect

Thank you, though that’s still not enough for me to really answer the question properly :slight_smile:

Note that the easiest way to display images in a viewport is using TCastleImageTransform and then flip what is visible using the Exists property on it. This is also performing good (esp. if you enable Viewport.DynamicBatching) and each image is separate (so there’s no issue about the performance of X3DRootNode.AddChildren).

I hope this helps, if not – please describe your issue more. Or, even better, explain your desired application / solution more – maybe then we can advise what’s the best approach for it in CGE (easier and optimal) :slight_smile:

  • My needs are actually very simple, first I want to draw a map, but I don’t want to draw it all, because the map can be very large (tens of thousands of images), so I need to only load the images I need to draw into the texture, and only draw your images when the character moves The examples\deprecated_to_upgrade\isometric_game project actually met my expectations very well but it did not perform well on IOS
  • According to my observation, the GPU processing power on IOS is obviously weaker than that on windows and Android platforms, as soon as the GPU usage is slightly too high, it will drop frames. In fact, I want to know why DrawableImage.Draw has to be called all the time to keep the image displayed Is there any way that it only needs to be called once and it can keep showing as long as it doesn’t refresh the screen
  • I have tried all the relevant examples of image drawing in your engine, but I can’t finish this map drawing. This problem has been bothering me for more than a month. I really hope it can be solved perfectly!