# September engine progress: IFC, web, CastleHttps, VS Code debugging, zen mode, X3D 4.0 4.1, downloads mirror

**URL:** https://forum.castle-engine.io/t/september-engine-progress-ifc-web-castlehttps-vs-code-debugging-zen-mode-x3d-4-0-4-1-downloads-mirror/2023
**Category:** News
**Created:** [October 2, 2025, 3:16pm UTC](https://forum.castle-engine.io/t/september-engine-progress-ifc-web-castlehttps-vs-code-debugging-zen-mode-x3d-4-0-4-1-downloads-mirror/2023 "2025-10-02T15:16:15Z")
**Posts on this page:** 5
**Page:** 1

<div class="post-metadata">

### Author: ![michalis](https://forum.castle-engine.io/user_avatar/forum.castle-engine.io/michalis/32/3_2.png) [@michalis](https://forum.castle-engine.io/u/michalis)
#### Post date: [October 2, 2025, 3:16pm UTC](https://forum.castle-engine.io/t/september-engine-progress-ifc-web-castlehttps-vs-code-debugging-zen-mode-x3d-4-0-4-1-downloads-mirror/2023/1 "2025-10-02T15:16:15Z")

</div>

| [![Impressive castle demo, in &quot;Maximize Preview&quot; (&quot;zen mode&quot;)](https://forum.castle-engine.io/uploads/default/original/2X/1/1869026af0727dea9f7b082316bdeb63ddc329e1.png)](https://castle-engine.io/wp/wp-content/uploads/2025/10/castle_example_zen.png "Impressive castle demo, in &quot;Maximize Preview&quot; (&quot;zen mode&quot;)") |
| [![Impressive castle demo, in default editor UI](https://forum.castle-engine.io/uploads/default/original/2X/3/3f8445fe8462bc2dfdc65b6fc7b258fb9caf8682.png)](https://castle-engine.io/wp/wp-content/uploads/2025/10/castle_example_default.png "Impressive castle demo, in default editor UI") |
| [![Walking adventure on web](https://forum.castle-engine.io/uploads/default/original/2X/2/20e22053333229cbafd299756def09c166f02306.png)](https://castle-engine.io/wp/wp-content/uploads/2025/10/web_walking.png "Walking adventure on web") |
| [![IFC house model](https://forum.castle-engine.io/uploads/default/original/2X/c/cead7ec54b4edb2b03c4fb3ad98c2ffe40febc90.png)](https://castle-engine.io/wp/wp-content/uploads/2025/10/ifc_house_castle.png "IFC house model") |

This was a busy month, with lots of engine work and also [a great conference in Germany organized by Sorpetaler](https://castle-engine.io/wp/2025/07/26/register-for-the-upcoming-pascal-conference-in-germany-early-bird-price-until-31-07/). Let me then announce a bag of engine improvements and news all across the board from last month (and more):

1. We’ve been working a lot in recent months on our [IFC support](https://castle-engine.io/ifc).
  - 

  - For now, let me just say I talked about our IFC support at [the conference in Germany](https://castle-engine.io/wp/2025/07/26/register-for-the-upcoming-pascal-conference-in-germany-early-bird-price-until-31-07/) and I will talk about it again at [the conference in Poland next week](https://www.bsc.com.pl/zlot-programistow-delphi-2025/). Catch me if you can!

2. [Web](https://castle-engine.io/web) target improvements:

3. We have a new unit `CastleHttps` to easily activate HTTPS support in `TCastleDownload`.

4. Our [VS Code](https://castle-engine.io/vscode) extension brings a major upgrade with version 1.4.

5. New _“Maximize Preview”_ feature (_“zen mode”_) is available in our [editor](https://castle-engine.io/editor).

6. _“Open Engine Location in File Manager”_ button is now available in the editor _“Preferences”_ dialog. It’s sometimes useful to explore engine easily, esp. since on Windows engine is installed to `AppData` which is by default hidden.

7. Various [X3D](https://castle-engine.io/x3d) 4.0 and 4.1 support improvements:

8. We maintain a mirror of our releases at [SourceForge (files of castle-engine project)](https://sourceforge.net/projects/castle-engine/files/castle_game_engine/). You can download from there the same files as from GitHub releases.

If you like what we’re doing, please [support us on Patreon](https://www.patreon.com/castleengine). Have fun making games!

---

<div class="post-metadata">

### Author: ![michalis](https://forum.castle-engine.io/user_avatar/forum.castle-engine.io/michalis/32/3_2.png) [@michalis](https://forum.castle-engine.io/u/michalis)
#### Post date: [October 2, 2025, 3:16pm UTC](https://forum.castle-engine.io/t/september-engine-progress-ifc-web-castlehttps-vs-code-debugging-zen-mode-x3d-4-0-4-1-downloads-mirror/2023/2 "2025-10-02T15:16:34Z")

</div>



---

<div class="post-metadata">

### Author: ![phomm](https://forum.castle-engine.io/user_avatar/forum.castle-engine.io/phomm/32/2827_2.png) [@phomm](https://forum.castle-engine.io/u/phomm)
#### Post date: [October 2, 2025, 5:58pm UTC](https://forum.castle-engine.io/t/september-engine-progress-ifc-web-castlehttps-vs-code-debugging-zen-mode-x3d-4-0-4-1-downloads-mirror/2023/3 "2025-10-02T17:58:55Z")

</div>

Wanted to notice one thing regarding castlehttps  
When I was attempting to build project for WEB, I had an error about unavailable opensslsockets module, and then I put {$ifndef WASI} define around it. Not sure if it makes sense now, but maybe it is useful to address this as well (I don’t see something like this in new castlehttps)

---

<div class="post-metadata">

### Author: ![michalis](https://forum.castle-engine.io/user_avatar/forum.castle-engine.io/michalis/32/3_2.png) [@michalis](https://forum.castle-engine.io/u/michalis)
#### Post date: [October 2, 2025, 8:14pm UTC](https://forum.castle-engine.io/t/september-engine-progress-ifc-web-castlehttps-vs-code-debugging-zen-mode-x3d-4-0-4-1-downloads-mirror/2023/4 "2025-10-02T20:14:52Z")

</div>

> [@phomm](#):
>
> When I was attempting to build project for WEB, I had an error about unavailable opensslsockets module, and then I put {$ifndef WASI} define around it. Not sure if it makes sense now, but maybe it is useful to address this as well (I don’t see something like this in new castlehttps)

Oh, nice catch.

Indeed, you’re right: we had an error before introducing `CastleHttps` unit: some examples (like `examples/network/asynchronous_download/`) had line like `{$ifdef FPC} OpenSSLSockets, {$endif}` which could not compile on the web. See [this commit for before/after](https://github.com/castle-engine/castle-engine/commit/27c227174b2de54eb86832ec5f8133f36e1b2fdf).

And the good news: the introduction of `CastleHttps` has solved this 🙂 I.e. the [commit](https://github.com/castle-engine/castle-engine/commit/27c227174b2de54eb86832ec5f8133f36e1b2fdf) solves this problem, even though I wasn’t aware of this case 🙂 That’s because `CastleHttps` has proper `$ifdefs`, it only uses `OpenSslSockets` when `HAS_FP_HTTP_CLIENT` (which is correctly _not_ defined on the web, it’s controlled by `src/common_includes/castleconf.inc`).

Testing now building `examples/network/asynchronous_download/` on the web – works, i.e.

```auto
cd examples/network/asynchronous_download
castle-engine compile-run --target=web 

```

goes OK, and the viewport animates.

( Actually pressing “Start Downloads” makes an exception `EDownloadError: Cannot read URLs with protocol "https"`, and then the exception crashes the application (as WASI cannot catch exceptions). But this is a different problem, it will be solved by just implementing `TCastleDownload` on the web soon using JS `XMLHttpRequest`. )

So, I think actually all is good now, with new `CastleHttps` 🙂

---

<div class="post-metadata">

### Author: ![michalis](https://forum.castle-engine.io/user_avatar/forum.castle-engine.io/michalis/32/3_2.png) [@michalis](https://forum.castle-engine.io/u/michalis)
#### Post date: [October 2, 2025, 8:27pm UTC](https://forum.castle-engine.io/t/september-engine-progress-ifc-web-castlehttps-vs-code-debugging-zen-mode-x3d-4-0-4-1-downloads-mirror/2023/5 "2025-10-02T20:27:06Z")

</div>

> [@michalis](#):
>
> ( Actually pressing “Start Downloads” makes an exception `EDownloadError: Cannot read URLs with protocol "https"`, and then the exception crashes the application (as WASI cannot catch exceptions). But this is a different problem, it will be solved by just implementing `TCastleDownload` on the web soon using JS `XMLHttpRequest`. )

For now, it is partially better → it doesn’t crash, just sets `TCastleDownload.ErrorMessage` to `Cannot read URLs with protocol "https"` on the web. So it “fails gracefully”.

 ![image](https://forum.castle-engine.io/uploads/default/original/2X/5/5634aa490b64bff1ba4d2b9a4a8ffe2073ebdc3a.png)

Done in [this commit](https://github.com/castle-engine/castle-engine/commit/47c31acec7ecefbda0592ee0834d67191cd3fcc9). Naturally in the long run, we still plan to just make `TCastleDownload` fully functional on web.
