<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/">
	<channel>
		<title><![CDATA[AB4D Forum - All Forums]]></title>
		<link>https://forum.ab4d.com/</link>
		<description><![CDATA[AB4D Forum - https://forum.ab4d.com]]></description>
		<pubDate>Wed, 08 Apr 2026 03:46:04 +0000</pubDate>
		<generator>MyBB</generator>
		<item>
			<title><![CDATA[Forum closed, use Issues on GitHub instead]]></title>
			<link>https://forum.ab4d.com/showthread.php?tid=4517</link>
			<pubDate>Wed, 01 Apr 2026 13:50:10 +0200</pubDate>
			<dc:creator><![CDATA[<a href="https://forum.ab4d.com/member.php?action=profile&uid=1">abenedik</a>]]></dc:creator>
			<guid isPermaLink="false">https://forum.ab4d.com/showthread.php?tid=4517</guid>
			<description><![CDATA[This forum is closed because of problems with sending emails.<br />
<br />
Please use <a href="https://github.com/ab4d/Ab4d.SharpEngine.Samples/issues" target="_blank" rel="noopener" class="mycode_url">Issues </a> or <a href="https://github.com/ab4d/Ab4d.SharpEngine.Samples/discussions" target="_blank" rel="noopener" class="mycode_url">Discussions</a> on the <a href="https://github.com/ab4d/Ab4d.SharpEngine.Samples" target="_blank" rel="noopener" class="mycode_url">GitHub Ab4d.SharpEngine.Samples repo</a>.]]></description>
			<content:encoded><![CDATA[This forum is closed because of problems with sending emails.<br />
<br />
Please use <a href="https://github.com/ab4d/Ab4d.SharpEngine.Samples/issues" target="_blank" rel="noopener" class="mycode_url">Issues </a> or <a href="https://github.com/ab4d/Ab4d.SharpEngine.Samples/discussions" target="_blank" rel="noopener" class="mycode_url">Discussions</a> on the <a href="https://github.com/ab4d/Ab4d.SharpEngine.Samples" target="_blank" rel="noopener" class="mycode_url">GitHub Ab4d.SharpEngine.Samples repo</a>.]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Forum closed, use Issues on GitHub instead]]></title>
			<link>https://forum.ab4d.com/showthread.php?tid=4516</link>
			<pubDate>Wed, 01 Apr 2026 13:47:35 +0200</pubDate>
			<dc:creator><![CDATA[<a href="https://forum.ab4d.com/member.php?action=profile&uid=1">abenedik</a>]]></dc:creator>
			<guid isPermaLink="false">https://forum.ab4d.com/showthread.php?tid=4516</guid>
			<description><![CDATA[This forum is closed because of problems with sending emails.<br />
<br />
Please use <a href="https://github.com/ab4d/Ab3d.DXEngine.Wpf.Samples/issues" target="_blank" rel="noopener" class="mycode_url">Issues </a> or <a href="https://github.com/ab4d/Ab3d.DXEngine.Wpf.Samples/discussions" target="_blank" rel="noopener" class="mycode_url">Discussions</a> on the <a href="https://github.com/ab4d/Ab3d.DXEngine.Wpf.Samples" target="_blank" rel="noopener" class="mycode_url">GitHub Ab3d.DXEngine.Wpf.Samples repo</a>.]]></description>
			<content:encoded><![CDATA[This forum is closed because of problems with sending emails.<br />
<br />
Please use <a href="https://github.com/ab4d/Ab3d.DXEngine.Wpf.Samples/issues" target="_blank" rel="noopener" class="mycode_url">Issues </a> or <a href="https://github.com/ab4d/Ab3d.DXEngine.Wpf.Samples/discussions" target="_blank" rel="noopener" class="mycode_url">Discussions</a> on the <a href="https://github.com/ab4d/Ab3d.DXEngine.Wpf.Samples" target="_blank" rel="noopener" class="mycode_url">GitHub Ab3d.DXEngine.Wpf.Samples repo</a>.]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Forum closed]]></title>
			<link>https://forum.ab4d.com/showthread.php?tid=4515</link>
			<pubDate>Wed, 01 Apr 2026 13:46:17 +0200</pubDate>
			<dc:creator><![CDATA[<a href="https://forum.ab4d.com/member.php?action=profile&uid=1">abenedik</a>]]></dc:creator>
			<guid isPermaLink="false">https://forum.ab4d.com/showthread.php?tid=4515</guid>
			<description><![CDATA[This forum is closed because of problems with sending emails.]]></description>
			<content:encoded><![CDATA[This forum is closed because of problems with sending emails.]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Forum closed, use Issues on GitHub instead]]></title>
			<link>https://forum.ab4d.com/showthread.php?tid=4514</link>
			<pubDate>Wed, 01 Apr 2026 13:45:08 +0200</pubDate>
			<dc:creator><![CDATA[<a href="https://forum.ab4d.com/member.php?action=profile&uid=1">abenedik</a>]]></dc:creator>
			<guid isPermaLink="false">https://forum.ab4d.com/showthread.php?tid=4514</guid>
			<description><![CDATA[This forum is closed because of problems with sending emails.<br />
<br />
Please use <a href="https://github.com/ab4d/Ab3d.PowerToys.Wpf.Samples/issues" target="_blank" rel="noopener" class="mycode_url">Issues </a> or <a href="https://github.com/ab4d/Ab3d.PowerToys.Wpf.Samples/discussions" target="_blank" rel="noopener" class="mycode_url">Discussions</a> on the <a href="https://github.com/ab4d/Ab3d.PowerToys.Wpf.Samples" target="_blank" rel="noopener" class="mycode_url">GitHub Ab3d.PowerToys.Wpf.Samples repo</a>.]]></description>
			<content:encoded><![CDATA[This forum is closed because of problems with sending emails.<br />
<br />
Please use <a href="https://github.com/ab4d/Ab3d.PowerToys.Wpf.Samples/issues" target="_blank" rel="noopener" class="mycode_url">Issues </a> or <a href="https://github.com/ab4d/Ab3d.PowerToys.Wpf.Samples/discussions" target="_blank" rel="noopener" class="mycode_url">Discussions</a> on the <a href="https://github.com/ab4d/Ab3d.PowerToys.Wpf.Samples" target="_blank" rel="noopener" class="mycode_url">GitHub Ab3d.PowerToys.Wpf.Samples repo</a>.]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Forum closed, use Issues on GitHub instead]]></title>
			<link>https://forum.ab4d.com/showthread.php?tid=4513</link>
			<pubDate>Wed, 01 Apr 2026 13:44:08 +0200</pubDate>
			<dc:creator><![CDATA[<a href="https://forum.ab4d.com/member.php?action=profile&uid=1">abenedik</a>]]></dc:creator>
			<guid isPermaLink="false">https://forum.ab4d.com/showthread.php?tid=4513</guid>
			<description><![CDATA[<span style="color: #303f50;" class="mycode_color"><span style="font-family: Helvetica;" class="mycode_font">This forum is closed because of problems with sending emails.</span></span><br />
<br />
<span style="color: #303f50;" class="mycode_color"><span style="font-family: Helvetica;" class="mycode_font">Please use Issues on the <a href="https://github.com/ab4d/Ab2d.ReaderSvg.Samples" target="_blank" rel="noopener" class="mycode_url">GitHub Samples project</a>.</span></span>]]></description>
			<content:encoded><![CDATA[<span style="color: #303f50;" class="mycode_color"><span style="font-family: Helvetica;" class="mycode_font">This forum is closed because of problems with sending emails.</span></span><br />
<br />
<span style="color: #303f50;" class="mycode_color"><span style="font-family: Helvetica;" class="mycode_font">Please use Issues on the <a href="https://github.com/ab4d/Ab2d.ReaderSvg.Samples" target="_blank" rel="noopener" class="mycode_url">GitHub Samples project</a>.</span></span>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Forum closed, use Issues on GitHub instead]]></title>
			<link>https://forum.ab4d.com/showthread.php?tid=4512</link>
			<pubDate>Wed, 01 Apr 2026 13:42:10 +0200</pubDate>
			<dc:creator><![CDATA[<a href="https://forum.ab4d.com/member.php?action=profile&uid=1">abenedik</a>]]></dc:creator>
			<guid isPermaLink="false">https://forum.ab4d.com/showthread.php?tid=4512</guid>
			<description><![CDATA[<span style="color: #303f50;" class="mycode_color"><span style="font-family: Helvetica;" class="mycode_font">This forum is closed because of problems with sending emails.</span></span>]]></description>
			<content:encoded><![CDATA[<span style="color: #303f50;" class="mycode_color"><span style="font-family: Helvetica;" class="mycode_font">This forum is closed because of problems with sending emails.</span></span>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Forum closed notice, use Issues on GitHub instead]]></title>
			<link>https://forum.ab4d.com/showthread.php?tid=4510</link>
			<pubDate>Wed, 01 Apr 2026 13:35:55 +0200</pubDate>
			<dc:creator><![CDATA[<a href="https://forum.ab4d.com/member.php?action=profile&uid=1">abenedik</a>]]></dc:creator>
			<guid isPermaLink="false">https://forum.ab4d.com/showthread.php?tid=4510</guid>
			<description><![CDATA[This forum is closed because of problems with sending emails.<br />
<br />
Please use Issues on the <a href="https://github.com/ab4d/Ab2d.Controls.ZoomPanel.Samples" target="_blank" rel="noopener" class="mycode_url">GitHub Samples project</a>.]]></description>
			<content:encoded><![CDATA[This forum is closed because of problems with sending emails.<br />
<br />
Please use Issues on the <a href="https://github.com/ab4d/Ab2d.Controls.ZoomPanel.Samples" target="_blank" rel="noopener" class="mycode_url">GitHub Samples project</a>.]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Optimizing Duplicate Model Imports]]></title>
			<link>https://forum.ab4d.com/showthread.php?tid=4509</link>
			<pubDate>Fri, 27 Mar 2026 09:18:30 +0100</pubDate>
			<dc:creator><![CDATA[<a href="https://forum.ab4d.com/member.php?action=profile&uid=13214">Lucas Gorrie</a>]]></dc:creator>
			<guid isPermaLink="false">https://forum.ab4d.com/showthread.php?tid=4509</guid>
			<description><![CDATA[For the purposes of a simulation built on the DXEngine and PowerToys, a very large number of high-poly models of the same .obj file must be imported on a low-spec system.<br />
<br />
I have a Model class which encapsulates WPF's ModelVisual3D and is constructed using the Model3D returned by an instance of AB3D's ReaderObj. An optimization specific to this use-case has already been implemented, whereby we obtain this Model faster by using the CloneCurrentValue extension on Model3Ds generated from a .obj file we've previously imported from. This has the benefit of running our turing machine over the tape in memory rather than that of the disk, but still performs quite poorly on startup. Is there a known/supported method of obtaining many independent Model3Ds from one .obj I am overlooking here?]]></description>
			<content:encoded><![CDATA[For the purposes of a simulation built on the DXEngine and PowerToys, a very large number of high-poly models of the same .obj file must be imported on a low-spec system.<br />
<br />
I have a Model class which encapsulates WPF's ModelVisual3D and is constructed using the Model3D returned by an instance of AB3D's ReaderObj. An optimization specific to this use-case has already been implemented, whereby we obtain this Model faster by using the CloneCurrentValue extension on Model3Ds generated from a .obj file we've previously imported from. This has the benefit of running our turing machine over the tape in memory rather than that of the disk, but still performs quite poorly on startup. Is there a known/supported method of obtaining many independent Model3Ds from one .obj I am overlooking here?]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Allow MultiLineNode.Material setter to change in runtime]]></title>
			<link>https://forum.ab4d.com/showthread.php?tid=4508</link>
			<pubDate>Wed, 04 Mar 2026 12:52:47 +0100</pubDate>
			<dc:creator><![CDATA[<a href="https://forum.ab4d.com/member.php?action=profile&uid=12443">BiMMate</a>]]></dc:creator>
			<guid isPermaLink="false">https://forum.ab4d.com/showthread.php?tid=4508</guid>
			<description><![CDATA[Hi<br />
<br />
I have an scenario where I need to create many dimension lines that share same material that can react to my application settings, so I allocate much less resources by having single material for them all<br />
<br />
However, I also need to Paint/Wash the lines when hovering or selecting them<br />
<br />
Material property is init-only so I need a different material for each object to accomplish that<br />
<br />
Could it be possible to make public setter to update material in runtime?]]></description>
			<content:encoded><![CDATA[Hi<br />
<br />
I have an scenario where I need to create many dimension lines that share same material that can react to my application settings, so I allocate much less resources by having single material for them all<br />
<br />
However, I also need to Paint/Wash the lines when hovering or selecting them<br />
<br />
Material property is init-only so I need a different material for each object to accomplish that<br />
<br />
Could it be possible to make public setter to update material in runtime?]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Fatal signal when running Ab4d sample app on Samsung phone with Android 16]]></title>
			<link>https://forum.ab4d.com/showthread.php?tid=4507</link>
			<pubDate>Fri, 20 Feb 2026 13:27:34 +0100</pubDate>
			<dc:creator><![CDATA[<a href="https://forum.ab4d.com/member.php?action=profile&uid=12227">henkt</a>]]></dc:creator>
			<guid isPermaLink="false">https://forum.ab4d.com/showthread.php?tid=4507</guid>
			<description><![CDATA[I am getting issues with SharpEngine on Samsumg phone with Android 16. If I run the latest Ab4d sample app (3.2.9509) it crashes with Fatal Signal 11. The app runs fine on an Android 16 emulator.<br />
<br />
Are there any workarounds you can suggest- e.g. CreateEngineOptions?<br />
<br />
The sample app crashes in the e.Surface.Canvas.DrawBitmap(_renderedSceneBitmap, info.Rect); inside SharpEngineSceneView.CanvasViewOnPaintSurface<br />
<br />
02-20 14:15:17.739 V/XGL    (27083): ----------------------------------------------------------------------<br />
02-20 14:15:17.739 V/XGL    (27083): SUMD version compiled date    = 2025-06-11 14:47 - KST<br />
02-20 14:15:17.739 V/XGL    (27083): SUMD version revision number  = 1fc295b0d2<br />
02-20 14:15:17.739 V/XGL    (27083): SUMD version info              = Driver version: 24.0.545, git hash: 1fc295b0d2<br />
02-20 14:15:17.739 V/XGL    (27083): ----------------------------------------------------------------------<br />
02-20 14:15:17.739 V/XGL    (27083): Entering: Create<br />
02-20 14:15:17.743 V/XGL    (27083): Exiting: Create<br />
02-20 14:15:17.861 D/VRI[MainActivity]@c2164b1(27083): reportNextDraw android.view.ViewRootImpl.performTraversals:5443 android.view.ViewRootImpl.doTraversal:3924 android.view.ViewRootImpl&#36;TraversalRunnable.run:12903 android.view.Choreographer&#36;CallbackRecord.run:1901 android.view.Choreographer&#36;CallbackRecord.run:1910 <br />
02-20 14:15:17.862 D/VRI[MainActivity]@c2164b1(27083): Setup new sync=wmsSync-VRI[MainActivity]@c2164b1#0<br />
02-20 14:15:17.862 I/VRI[MainActivity]@c2164b1(27083): Creating new active sync group VRI[MainActivity]@c2164b1#1<br />
02-20 14:15:17.864 D/VRI[MainActivity]@c2164b1(27083): registerCallbacksForSync syncBuffer=false<br />
02-20 14:15:17.876 W/monodroid-assembly(27083): Shared library 'libjnigraphics.so' not loaded, p/invoke 'AndroidBitmap_lockPixels' may fail<br />
02-20 14:15:17.877 I/amples.maui.ios(27083): hiddenapi: Accessing hidden field Landroid/graphics/Bitmap;-&gt;mNativePtr:J (runtime_flags=0, domain=platform, api=unsupported) from Lcrc648e35430423bd4943/SKCanvasView; (domain=app) using JNI: allowed<br />
02-20 14:15:18.868 E/SurfaceSyncGroup(27083): Failed to receive transaction ready in 1000ms. Marking SurfaceSyncGroup(wmsSync-VRI[MainActivity]@c2164b1#0) as ready<br />
02-20 14:15:18.869 I/SurfaceSyncGroup(27083): checkIfSyncIsComplete: Callers=android.window.SurfaceSyncGroup.markSyncReady:281 android.window.SurfaceSyncGroup.lambda&#36;addTimeout&#36;6:860 android.window.SurfaceSyncGroup.&#36;r8&#36;lambda&#36;ButZILC1krkx4FHXNaBT92Z1Qt8:0 android.window.SurfaceSyncGroup&#36;&#36;ExternalSyntheticLambda3.run:0 android.os.Handler.handleCallback:995 <br />
02-20 14:15:18.869 D/SurfaceSyncGroup(27083): Successfully finished sync id=wmsSync-VRI[MainActivity]@c2164b1#0<br />
02-20 14:15:18.869 D/VRI[MainActivity]@c2164b1(27083): reportDrawFinished seqId=0<br />
02-20 14:15:18.871 E/SurfaceSyncGroup(27083): Failed to receive transaction ready in 1000ms. Marking SurfaceSyncGroup(VRI[MainActivity]@c2164b1#1) as ready<br />
02-20 14:15:18.871 I/SurfaceSyncGroup(27083): checkIfSyncIsComplete: Callers=android.window.SurfaceSyncGroup.markSyncReady:281 android.window.SurfaceSyncGroup.lambda&#36;addTimeout&#36;6:860 android.window.SurfaceSyncGroup.&#36;r8&#36;lambda&#36;ButZILC1krkx4FHXNaBT92Z1Qt8:0 android.window.SurfaceSyncGroup&#36;&#36;ExternalSyntheticLambda3.run:0 android.os.Handler.handleCallback:995 <br />
02-20 14:15:18.871 D/SurfaceSyncGroup(27083): Successfully finished sync id=VRI[MainActivity]@c2164b1#1<br />
02-20 14:15:25.531 I/GSC    (27083): SID[0] : ef82d8ce10ab7c83, Kind: 1, time : 29.523 ms<br />
02-20 14:15:25.537 I/GSC    (27083): SID[1] : 05ebe144822b6758, Kind: 0, time : 5.742 ms<br />
02-20 14:15:25.543 I/GSC    (27083): SID[2] : 5a197a1cc83b561c, Kind: 1, time : 1.654 ms<br />
02-20 14:15:25.562 I/GSC    (27083): SID[3] : 710015f16afb9a1f, Kind: 2, time : 18.198 ms<br />
02-20 14:15:25.596 I/GSC    (27083): SID[4] : 8bba210ad7cf2e91, Kind: 2, time : 32.451 ms<br />
02-20 14:15:36.492 F/libc    (27083): Fatal signal 11 (SIGSEGV), code 2 (SEGV_ACCERR), fault addr 0x7bd8f78000 in tid 27083 (amples.maui.ios), pid 27083 (amples.maui.ios)]]></description>
			<content:encoded><![CDATA[I am getting issues with SharpEngine on Samsumg phone with Android 16. If I run the latest Ab4d sample app (3.2.9509) it crashes with Fatal Signal 11. The app runs fine on an Android 16 emulator.<br />
<br />
Are there any workarounds you can suggest- e.g. CreateEngineOptions?<br />
<br />
The sample app crashes in the e.Surface.Canvas.DrawBitmap(_renderedSceneBitmap, info.Rect); inside SharpEngineSceneView.CanvasViewOnPaintSurface<br />
<br />
02-20 14:15:17.739 V/XGL    (27083): ----------------------------------------------------------------------<br />
02-20 14:15:17.739 V/XGL    (27083): SUMD version compiled date    = 2025-06-11 14:47 - KST<br />
02-20 14:15:17.739 V/XGL    (27083): SUMD version revision number  = 1fc295b0d2<br />
02-20 14:15:17.739 V/XGL    (27083): SUMD version info              = Driver version: 24.0.545, git hash: 1fc295b0d2<br />
02-20 14:15:17.739 V/XGL    (27083): ----------------------------------------------------------------------<br />
02-20 14:15:17.739 V/XGL    (27083): Entering: Create<br />
02-20 14:15:17.743 V/XGL    (27083): Exiting: Create<br />
02-20 14:15:17.861 D/VRI[MainActivity]@c2164b1(27083): reportNextDraw android.view.ViewRootImpl.performTraversals:5443 android.view.ViewRootImpl.doTraversal:3924 android.view.ViewRootImpl&#36;TraversalRunnable.run:12903 android.view.Choreographer&#36;CallbackRecord.run:1901 android.view.Choreographer&#36;CallbackRecord.run:1910 <br />
02-20 14:15:17.862 D/VRI[MainActivity]@c2164b1(27083): Setup new sync=wmsSync-VRI[MainActivity]@c2164b1#0<br />
02-20 14:15:17.862 I/VRI[MainActivity]@c2164b1(27083): Creating new active sync group VRI[MainActivity]@c2164b1#1<br />
02-20 14:15:17.864 D/VRI[MainActivity]@c2164b1(27083): registerCallbacksForSync syncBuffer=false<br />
02-20 14:15:17.876 W/monodroid-assembly(27083): Shared library 'libjnigraphics.so' not loaded, p/invoke 'AndroidBitmap_lockPixels' may fail<br />
02-20 14:15:17.877 I/amples.maui.ios(27083): hiddenapi: Accessing hidden field Landroid/graphics/Bitmap;-&gt;mNativePtr:J (runtime_flags=0, domain=platform, api=unsupported) from Lcrc648e35430423bd4943/SKCanvasView; (domain=app) using JNI: allowed<br />
02-20 14:15:18.868 E/SurfaceSyncGroup(27083): Failed to receive transaction ready in 1000ms. Marking SurfaceSyncGroup(wmsSync-VRI[MainActivity]@c2164b1#0) as ready<br />
02-20 14:15:18.869 I/SurfaceSyncGroup(27083): checkIfSyncIsComplete: Callers=android.window.SurfaceSyncGroup.markSyncReady:281 android.window.SurfaceSyncGroup.lambda&#36;addTimeout&#36;6:860 android.window.SurfaceSyncGroup.&#36;r8&#36;lambda&#36;ButZILC1krkx4FHXNaBT92Z1Qt8:0 android.window.SurfaceSyncGroup&#36;&#36;ExternalSyntheticLambda3.run:0 android.os.Handler.handleCallback:995 <br />
02-20 14:15:18.869 D/SurfaceSyncGroup(27083): Successfully finished sync id=wmsSync-VRI[MainActivity]@c2164b1#0<br />
02-20 14:15:18.869 D/VRI[MainActivity]@c2164b1(27083): reportDrawFinished seqId=0<br />
02-20 14:15:18.871 E/SurfaceSyncGroup(27083): Failed to receive transaction ready in 1000ms. Marking SurfaceSyncGroup(VRI[MainActivity]@c2164b1#1) as ready<br />
02-20 14:15:18.871 I/SurfaceSyncGroup(27083): checkIfSyncIsComplete: Callers=android.window.SurfaceSyncGroup.markSyncReady:281 android.window.SurfaceSyncGroup.lambda&#36;addTimeout&#36;6:860 android.window.SurfaceSyncGroup.&#36;r8&#36;lambda&#36;ButZILC1krkx4FHXNaBT92Z1Qt8:0 android.window.SurfaceSyncGroup&#36;&#36;ExternalSyntheticLambda3.run:0 android.os.Handler.handleCallback:995 <br />
02-20 14:15:18.871 D/SurfaceSyncGroup(27083): Successfully finished sync id=VRI[MainActivity]@c2164b1#1<br />
02-20 14:15:25.531 I/GSC    (27083): SID[0] : ef82d8ce10ab7c83, Kind: 1, time : 29.523 ms<br />
02-20 14:15:25.537 I/GSC    (27083): SID[1] : 05ebe144822b6758, Kind: 0, time : 5.742 ms<br />
02-20 14:15:25.543 I/GSC    (27083): SID[2] : 5a197a1cc83b561c, Kind: 1, time : 1.654 ms<br />
02-20 14:15:25.562 I/GSC    (27083): SID[3] : 710015f16afb9a1f, Kind: 2, time : 18.198 ms<br />
02-20 14:15:25.596 I/GSC    (27083): SID[4] : 8bba210ad7cf2e91, Kind: 2, time : 32.451 ms<br />
02-20 14:15:36.492 F/libc    (27083): Fatal signal 11 (SIGSEGV), code 2 (SEGV_ACCERR), fault addr 0x7bd8f78000 in tid 27083 (amples.maui.ios), pid 27083 (amples.maui.ios)]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[InputEventsManager.PointerExited not fired]]></title>
			<link>https://forum.ab4d.com/showthread.php?tid=4506</link>
			<pubDate>Thu, 12 Feb 2026 11:19:58 +0100</pubDate>
			<dc:creator><![CDATA[<a href="https://forum.ab4d.com/member.php?action=profile&uid=13161">sthTX</a>]]></dc:creator>
			<guid isPermaLink="false">https://forum.ab4d.com/showthread.php?tid=4506</guid>
			<description><![CDATA[Hi,<br />
<br />
i'm testing out the SharpEngine for a upcoming project with Avalonia and WPF.<br />
During this testing i noticed that the PointerExited event doesn't seem to fire when using Avalonia or WPF framework.<br />
All other mouse events like PointerEntered or PointerMoved are working correctly when moving the mouse over the SharpEngine control. <br />
I've also tried it with your Samples application where it also doesn't seem to fire this event.<br />
<br />
Is this a bug or do i have to implement this event manually by routing it from WPF/Avalonia to the InputEventsManager?]]></description>
			<content:encoded><![CDATA[Hi,<br />
<br />
i'm testing out the SharpEngine for a upcoming project with Avalonia and WPF.<br />
During this testing i noticed that the PointerExited event doesn't seem to fire when using Avalonia or WPF framework.<br />
All other mouse events like PointerEntered or PointerMoved are working correctly when moving the mouse over the SharpEngine control. <br />
I've also tried it with your Samples application where it also doesn't seem to fire this event.<br />
<br />
Is this a bug or do i have to implement this event manually by routing it from WPF/Avalonia to the InputEventsManager?]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Avalonia TabControl causes MainSceneView to be disposed]]></title>
			<link>https://forum.ab4d.com/showthread.php?tid=4505</link>
			<pubDate>Sat, 07 Feb 2026 06:56:18 +0100</pubDate>
			<dc:creator><![CDATA[<a href="https://forum.ab4d.com/member.php?action=profile&uid=13160">Oplopanax</a>]]></dc:creator>
			<guid isPermaLink="false">https://forum.ab4d.com/showthread.php?tid=4505</guid>
			<description><![CDATA[I am having an unexpected behaviour with the Avalonia TabControl.<br />
<br />
The Scene is initialized when the control is first shown, but if you tab to another control and come back the Scene is disposed. When you try to move the camera, the following exception is thrown:<br />
<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>  at Ab4d.SharpEngine.SceneNodes.SceneNode.Update()<br />
  at Ab4d.SharpEngine.Scene.Update(Boolean forceUpdateAll)<br />
  at Ab4d.SharpEngine.Scene.GetClosestHitObject(Ray ray, SceneNode rootSceneNode, HitTestOptions customHitTestOptions)<br />
  at Ab4d.SharpEngine.SceneView.GetClosestHitObject(Ray ray, HitTestOptions customHitTestOptions)<br />
  at Ab4d.SharpEngine.Utilities.CameraController.GetRotationCenterPositionFromPointerPosition(Vector2 pointerPosition, Boolean calculatePositionWhenNoObjectIsHit)<br />
  at Ab4d.SharpEngine.Utilities.CameraController.UpdateRotationCenterPosition(Vector2 pointerPosition, Boolean calculatePositionWhenNoObjectIsHit)<br />
  at Ab4d.SharpEngine.Utilities.CameraController.StartCameraRotation(Vector2 pointerPosition)<br />
  at Ab4d.SharpEngine.Utilities.ManualPointerCameraController.StartPointerProcessing(Vector2 pointerPosition, PointerButtons pressedButtons, KeyboardModifiers keyboardModifiers)<br />
  at Ab4d.SharpEngine.Utilities.ManualPointerCameraController.ProcessPointerMoved(Vector2 pointerPosition, PointerButtons pressedPointerButtons, KeyboardModifiers keyboardModifiers)<br />
  at Ab4d.SharpEngine.AvaloniaUI.PointerCameraController.♔(Object ♔, PointerEventArgs ♔)<br />
  at Avalonia.Interactivity.Interactive.&lt;AddHandler&gt;g__InvokeAdapter|8_0[TEventArgs](Delegate baseHandler, Object sender, RoutedEventArgs args)<br />
  at Avalonia.Interactivity.Interactive.&lt;&gt;c__8`1.&lt;AddHandler&gt;b__8_1(Delegate baseHandler, Object sender, RoutedEventArgs args)<br />
  at Avalonia.Interactivity.EventRoute.RaiseEventImpl(RoutedEventArgs e)<br />
  at Avalonia.Interactivity.EventRoute.RaiseEvent(Interactive source, RoutedEventArgs e)<br />
  at Avalonia.Interactivity.Interactive.RaiseEvent(RoutedEventArgs e)<br />
  at Avalonia.Input.MouseDevice.ProcessRawEvent(RawPointerEventArgs e)<br />
  at Avalonia.Controls.TopLevel.&lt;&gt;c.&lt;HandleInput&gt;b__150_0(Object state)<br />
  at Avalonia.Threading.Dispatcher.Send(SendOrPostCallback action, Object arg, Nullable`1 priority)<br />
  at Avalonia.Controls.TopLevel.HandleInput(RawInputEventArgs e)<br />
  at Avalonia.Win32.WindowImpl.AppWndProc(IntPtr hWnd, UInt32 msg, IntPtr wParam, IntPtr lParam)<br />
  at Avalonia.Win32.WindowImpl.WndProcMessageHandler(IntPtr hWnd, UInt32 msg, IntPtr wParam, IntPtr lParam)<br />
  at Avalonia.Win32.Interop.UnmanagedMethods.DispatchMessage(MSG&amp; lpmsg)<br />
  at Avalonia.Win32.Win32DispatcherImpl.RunLoop(CancellationToken cancellationToken)<br />
  at Avalonia.Threading.DispatcherFrame.Run(IControlledDispatcherImpl impl)<br />
  at Avalonia.Threading.Dispatcher.PushFrame(DispatcherFrame frame)<br />
  at Avalonia.Threading.Dispatcher.MainLoop(CancellationToken cancellationToken)<br />
  at Avalonia.Controls.ApplicationLifetimes.ClassicDesktopStyleApplicationLifetime.StartCore(String[] args)<br />
  at Avalonia.Controls.ApplicationLifetimes.ClassicDesktopStyleApplicationLifetime.Start(String[] args)<br />
  at Avalonia.ClassicDesktopStyleApplicationLifetimeExtensions.StartWithClassicDesktopLifetime(AppBuilder builder, String[] args, Action`1 lifetimeBuilder)<br />
  at AB4D.TabControlIssue.Program.Main(String[] args) in D:&#92;Development&#92;Ab4d.SharpEngine.Samples-main&#92;TabControlSample&#92;Program.cs:line 12</code></div></div><br />
I created a project at GitHub to illustrate the issue<br />
<br />
<a href="https://github.com/MichaelFCoyle/AB4D.TabControlIssue" target="_blank" rel="noopener" class="mycode_url">https://github.com/MichaelFCoyle/AB4D.TabControlIssue</a><br />
<br />
In the main application I am working with a different exception is thrown because I am adding points to the root node but basically the MainSceneView, Scene, SceneView and RootNode are all disposed.<br />
<br />
Is there guidance where I can re-create the scene in code every time the TabControl is shown?]]></description>
			<content:encoded><![CDATA[I am having an unexpected behaviour with the Avalonia TabControl.<br />
<br />
The Scene is initialized when the control is first shown, but if you tab to another control and come back the Scene is disposed. When you try to move the camera, the following exception is thrown:<br />
<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>  at Ab4d.SharpEngine.SceneNodes.SceneNode.Update()<br />
  at Ab4d.SharpEngine.Scene.Update(Boolean forceUpdateAll)<br />
  at Ab4d.SharpEngine.Scene.GetClosestHitObject(Ray ray, SceneNode rootSceneNode, HitTestOptions customHitTestOptions)<br />
  at Ab4d.SharpEngine.SceneView.GetClosestHitObject(Ray ray, HitTestOptions customHitTestOptions)<br />
  at Ab4d.SharpEngine.Utilities.CameraController.GetRotationCenterPositionFromPointerPosition(Vector2 pointerPosition, Boolean calculatePositionWhenNoObjectIsHit)<br />
  at Ab4d.SharpEngine.Utilities.CameraController.UpdateRotationCenterPosition(Vector2 pointerPosition, Boolean calculatePositionWhenNoObjectIsHit)<br />
  at Ab4d.SharpEngine.Utilities.CameraController.StartCameraRotation(Vector2 pointerPosition)<br />
  at Ab4d.SharpEngine.Utilities.ManualPointerCameraController.StartPointerProcessing(Vector2 pointerPosition, PointerButtons pressedButtons, KeyboardModifiers keyboardModifiers)<br />
  at Ab4d.SharpEngine.Utilities.ManualPointerCameraController.ProcessPointerMoved(Vector2 pointerPosition, PointerButtons pressedPointerButtons, KeyboardModifiers keyboardModifiers)<br />
  at Ab4d.SharpEngine.AvaloniaUI.PointerCameraController.♔(Object ♔, PointerEventArgs ♔)<br />
  at Avalonia.Interactivity.Interactive.&lt;AddHandler&gt;g__InvokeAdapter|8_0[TEventArgs](Delegate baseHandler, Object sender, RoutedEventArgs args)<br />
  at Avalonia.Interactivity.Interactive.&lt;&gt;c__8`1.&lt;AddHandler&gt;b__8_1(Delegate baseHandler, Object sender, RoutedEventArgs args)<br />
  at Avalonia.Interactivity.EventRoute.RaiseEventImpl(RoutedEventArgs e)<br />
  at Avalonia.Interactivity.EventRoute.RaiseEvent(Interactive source, RoutedEventArgs e)<br />
  at Avalonia.Interactivity.Interactive.RaiseEvent(RoutedEventArgs e)<br />
  at Avalonia.Input.MouseDevice.ProcessRawEvent(RawPointerEventArgs e)<br />
  at Avalonia.Controls.TopLevel.&lt;&gt;c.&lt;HandleInput&gt;b__150_0(Object state)<br />
  at Avalonia.Threading.Dispatcher.Send(SendOrPostCallback action, Object arg, Nullable`1 priority)<br />
  at Avalonia.Controls.TopLevel.HandleInput(RawInputEventArgs e)<br />
  at Avalonia.Win32.WindowImpl.AppWndProc(IntPtr hWnd, UInt32 msg, IntPtr wParam, IntPtr lParam)<br />
  at Avalonia.Win32.WindowImpl.WndProcMessageHandler(IntPtr hWnd, UInt32 msg, IntPtr wParam, IntPtr lParam)<br />
  at Avalonia.Win32.Interop.UnmanagedMethods.DispatchMessage(MSG&amp; lpmsg)<br />
  at Avalonia.Win32.Win32DispatcherImpl.RunLoop(CancellationToken cancellationToken)<br />
  at Avalonia.Threading.DispatcherFrame.Run(IControlledDispatcherImpl impl)<br />
  at Avalonia.Threading.Dispatcher.PushFrame(DispatcherFrame frame)<br />
  at Avalonia.Threading.Dispatcher.MainLoop(CancellationToken cancellationToken)<br />
  at Avalonia.Controls.ApplicationLifetimes.ClassicDesktopStyleApplicationLifetime.StartCore(String[] args)<br />
  at Avalonia.Controls.ApplicationLifetimes.ClassicDesktopStyleApplicationLifetime.Start(String[] args)<br />
  at Avalonia.ClassicDesktopStyleApplicationLifetimeExtensions.StartWithClassicDesktopLifetime(AppBuilder builder, String[] args, Action`1 lifetimeBuilder)<br />
  at AB4D.TabControlIssue.Program.Main(String[] args) in D:&#92;Development&#92;Ab4d.SharpEngine.Samples-main&#92;TabControlSample&#92;Program.cs:line 12</code></div></div><br />
I created a project at GitHub to illustrate the issue<br />
<br />
<a href="https://github.com/MichaelFCoyle/AB4D.TabControlIssue" target="_blank" rel="noopener" class="mycode_url">https://github.com/MichaelFCoyle/AB4D.TabControlIssue</a><br />
<br />
In the main application I am working with a different exception is thrown because I am adding points to the root node but basically the MainSceneView, Scene, SceneView and RootNode are all disposed.<br />
<br />
Is there guidance where I can re-create the scene in code every time the TabControl is shown?]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[OBJ file not drawing correctly]]></title>
			<link>https://forum.ab4d.com/showthread.php?tid=4504</link>
			<pubDate>Tue, 03 Feb 2026 04:21:31 +0100</pubDate>
			<dc:creator><![CDATA[<a href="https://forum.ab4d.com/member.php?action=profile&uid=13157">Gilrock</a>]]></dc:creator>
			<guid isPermaLink="false">https://forum.ab4d.com/showthread.php?tid=4504</guid>
			<description><![CDATA[I'm testing out Ab4d.SharpEngine to use for a project and we plan to get a 4-seat license if I can demonstrate it will work for us.  One of my main needs is going to be rendering OBJ files.  I tested with an OBJ file of my house.<br />
<br />
This is what I get in Ab4d:<br />
<img src="https://i.imgur.com/w5OwgHD.png" loading="lazy"  alt="[Image: w5OwgHD.png]" class="mycode_img" /><br />
<br />
This is what the house should look like.  I'm rendering this in a program I work on called xLights.  We use the tinyobjloader for loading the OBJ file.  All our code is freeware on GitHub under xLights Sequencer.  But I can't use that code for this new project.  We want to use Avalonia and Ab4d already has nice integration.<br />
<img src="https://i.imgur.com/pEus7Er.png" loading="lazy"  alt="[Image: pEus7Er.png]" class="mycode_img" />]]></description>
			<content:encoded><![CDATA[I'm testing out Ab4d.SharpEngine to use for a project and we plan to get a 4-seat license if I can demonstrate it will work for us.  One of my main needs is going to be rendering OBJ files.  I tested with an OBJ file of my house.<br />
<br />
This is what I get in Ab4d:<br />
<img src="https://i.imgur.com/w5OwgHD.png" loading="lazy"  alt="[Image: w5OwgHD.png]" class="mycode_img" /><br />
<br />
This is what the house should look like.  I'm rendering this in a program I work on called xLights.  We use the tinyobjloader for loading the OBJ file.  All our code is freeware on GitHub under xLights Sequencer.  But I can't use that code for this new project.  We want to use Avalonia and Ab4d already has nice integration.<br />
<img src="https://i.imgur.com/pEus7Er.png" loading="lazy"  alt="[Image: pEus7Er.png]" class="mycode_img" />]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Performance with multiple views]]></title>
			<link>https://forum.ab4d.com/showthread.php?tid=4503</link>
			<pubDate>Tue, 13 Jan 2026 16:13:02 +0100</pubDate>
			<dc:creator><![CDATA[<a href="https://forum.ab4d.com/member.php?action=profile&uid=13001">matt@reefmaster.com.au</a>]]></dc:creator>
			<guid isPermaLink="false">https://forum.ab4d.com/showthread.php?tid=4503</guid>
			<description><![CDATA[Hi,<br />
<br />
I am writing an Avalonia MDI application where it is possible to have many windows created at one time, each of which uses it's own SharpEngine view control.<br />
I notice that after say 5 windows are opened, performance in subsequent windows degrades sharply. This is not too surprising given the amount of resources that needs to be allocated to each view<br />
<br />
So far: I am sharing a single VulkanDevice across all renderers and have already set supersampling to 1 - the latter certainly improves performance over multiple screens but at some quality cost of course.<br />
<br />
Given that most of these views won't actually be *visible* at the same time, I am looking forguidance on what the best strategy is for trying to reduce resource use in my scenario. I do need to be able to let the user open multiple views, but of course the total screen area (even if all are visible) will never exceed the screen dimensions. Is there a recommended way to release the heaviest GPU assets whilst views are not visible that will allow quick resumption when the user reverts to the view?<br />
<br />
thanks!]]></description>
			<content:encoded><![CDATA[Hi,<br />
<br />
I am writing an Avalonia MDI application where it is possible to have many windows created at one time, each of which uses it's own SharpEngine view control.<br />
I notice that after say 5 windows are opened, performance in subsequent windows degrades sharply. This is not too surprising given the amount of resources that needs to be allocated to each view<br />
<br />
So far: I am sharing a single VulkanDevice across all renderers and have already set supersampling to 1 - the latter certainly improves performance over multiple screens but at some quality cost of course.<br />
<br />
Given that most of these views won't actually be *visible* at the same time, I am looking forguidance on what the best strategy is for trying to reduce resource use in my scenario. I do need to be able to let the user open multiple views, but of course the total screen area (even if all are visible) will never exceed the screen dimensions. Is there a recommended way to release the heaviest GPU assets whilst views are not visible that will allow quick resumption when the user reverts to the view?<br />
<br />
thanks!]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[CameraQuickZoomStarted & CameraQuickZoomEnded not fired]]></title>
			<link>https://forum.ab4d.com/showthread.php?tid=4502</link>
			<pubDate>Fri, 31 Oct 2025 15:18:46 +0100</pubDate>
			<dc:creator><![CDATA[<a href="https://forum.ab4d.com/member.php?action=profile&uid=12443">BiMMate</a>]]></dc:creator>
			<guid isPermaLink="false">https://forum.ab4d.com/showthread.php?tid=4502</guid>
			<description><![CDATA[I think CameraQuickZoomStarted &amp; CameraQuickZoomEnded events are not fired for MouseCameraController<br />
<br />
I know I can subscribe to MouseCameraController.Camera.PropertyChanged, but there I can't know when zoom is done]]></description>
			<content:encoded><![CDATA[I think CameraQuickZoomStarted &amp; CameraQuickZoomEnded events are not fired for MouseCameraController<br />
<br />
I know I can subscribe to MouseCameraController.Camera.PropertyChanged, but there I can't know when zoom is done]]></content:encoded>
		</item>
	</channel>
</rss>