[x3d-public] Castle Game Engine / Castle Model Viewer news: IFC support, work on the web target

Michalis Kamburelis michalis.kambi at gmail.com
Mon Mar 17 10:43:27 PDT 2025


Thanks for the good words! Some things you ask for are coming (and
soon), some... are possible, but not so soon :)

1. I do plan to make "Castle Model Viewer for the web" expose some
capabilities similar to X3DOM and X_ITE. I do hope that Holger,
Andreas and other developers of web X3D browsers will forgive me for
creating a little extra competition :)

1.1. We will have ability to easily use precompiled "Castle Model
Viewer for the web" (either hosted on our servers, on your own
servers) to view arbitrary X3D model.

    Either with X3D content inside the webpage DOM, or with an URL
pointing an X3D file.

    E.g. "just place <script
src="http://castle-engine.io/viewer.js"></script> and it will change
the <x3d>...</x3d> in your webpage content into an interactive
canvas". So we can have something similar to basic usage of X3DOM on
https://doc.x3dom.org/tutorials/basics/hello/index.html . (This is
just an example! URL "http://castle-engine.io/viewer.js" doesn't work
yet, I just give it here as an example of how it may look like in
future).

1.2. We should have ability to point the precompiled "Castle Model
Viewer for the web" using a URL parameter to an arbitrary file.
Editing the X3D contents with a textarea should be doable too. So we
can have a playground like
https://create3000.github.io/x_ite/playground/?url=https://create3000.github.io/media/examples/X3D/TreasureIsland/TreasureIsland.x3d
.

Neither are possible yet, but it's on the nearest TODO list.

2. Using the browser's JS engine to run arbitrary JS from the X3D
Script node... Likely yes, I think this is possible, but more work.

Expect AD 1 sometime in April 2025. I cannot say when AD 2 may be
available, if it will be available (but encouraging me to do this
really works :), so yes, I may do it sooner when many people request
it).

Our Pascal code, both when compiled with pas2js and when compiled with
FPC+WebAssembly, has full access to the webpage's DOM and can interact
with it, and it can call / be called by regular JS code in the
browser. So, all sorts of interoperability are possible :)

Regards,
Michalis

pon., 17 mar 2025 o 16:29 John Carlson <yottzumm at gmail.com> napisał(a):
>
> Michalis,
>
> This looks like a quantum leap in capability. Great work!
>
> Will we see the ability to include any JavaScript in an X3D Script node?  Is this already available?  I heard some rumors from Aaron.  Any instructions on doing something like X3DOM editor or X_ITE playground, especially with the mobile model viewer?
>
> Thanks!
>
> John
>
> On Mon, Mar 17, 2025 at 9:17 AM Michalis Kamburelis via x3d-public <x3d-public at web3d.org> wrote:
>>
>> Hello all,
>>
>> This weekend, I published a new video summarizing the recent
>> developments at Castle Game Engine (and Castle Model Viewer and our
>> related tools). I think it may be interesting here too:
>>
>> https://www.youtube.com/watch?v=MJcMqfx6u98
>>
>> Recap and links:
>>
>> 1. We work on the web target, which means that you can recompile any
>> application developed using Castle Game Engine to the web.
>>
>>     There's a lot (probably too much :) ) technical details on
>> https://castle-engine.io/web .
>>
>>     If you just want to see something working, simply run one of the
>> examples linked there.
>>
>>     Of particular interest here will be *really early pre-release* of
>> our model viewer for the web:
>> https://castle-engine.io/web-demos/castle-model-viewer-mobile/ .
>>
>>     It can display "pre-packaged" files in a number of formats (X3D,
>> glTF, IFC, Spine JSON), it can switch between viewpoints, run
>> animations, use Walk/Examine modes etc. It's still a work-in-progress,
>> with the most obvious missing feature being: it cannot load yet
>> arbitrary files from your disk, you can only choose from the few
>> "pre-packaged" files.
>>
>>     Much more updates to this are coming!
>>
>> 2. We have added support for the IFC standard, which is a 3D standard
>> commonly used by the BIM (building information modeling) industry and
>> supported by software like FreeCAD, BonsaiBIM (Blender plugin),
>> ArchiCAD, Revit.
>>
>>     In way, it's "another 3D standard" we support. I tell at all
>> conferences that I like 3D standards, so I'm happy to add another one
>> to our collection, alongside X3D and glTF.
>>
>>     First of all, we provide the "usual" support you would expect for
>> a 3D format from us: we can display it in all our tools, save it,
>> convert to/from X3D and other formats.
>>
>>     Second of all: you can use our Pascal API to develop applications
>> that "think" using IFC classes. There are almost 800 IFC classes that
>> express various aspects of "real-world things" and all this
>> information is useful for people who actually design and build real
>> houses, bridges, factories, windows etc.
>>
>>     This is all described in details on our page
>> https://castle-engine.io/ifc , and demonstrated quickly in the video I
>> linked above.
>>
>>     As said, all our tools get IFC support, and can convert IFC <->
>> X3D, in particular
>>
>>     - Castle Model Viewer (
>> https://castle-engine.io/castle-model-viewer ) (snapshot version now)
>> can view IFC files, and convert IFC <-> X3D, any 3D format (glTF, STL
>> etc.) -> IFC, IFC -> STL etc.
>>
>>     - Castle Model Converter (
>> https://castle-engine.io/castle-model-converter ) can perform the same
>> conversions but from the command-line, nice for batch mode /
>> scripting.
>>
>>     - Our mobile viewer (
>> https://castle-engine.io/castle-model-viewer-mobile ) should be
>> updated soon to support IFC too.
>>
>>     - The pre-release of the web viewer, that I already linked in AD
>> 1, https://castle-engine.io/web-demos/castle-model-viewer-mobile/ also
>> already supports IFC.
>>
>>     - Our online model converter (
>> https://castle-engine.io/convert.php ) can also handle IFC now, and
>> perform conversions mentioned above.
>>
>> Have fun with 3D standards :)!
>> Michalis
>>
>> _______________________________________________
>> x3d-public mailing list
>> x3d-public at web3d.org
>> http://web3d.org/mailman/listinfo/x3d-public_web3d.org



More information about the x3d-public mailing list