Ooops
October 24, 2021, 21:53:47

Author Topic: Faerghail (Remake)  (Read 9373 times)

Offline Krischan

  • Full Member
  • ***
  • Posts: 244
    • Krischan's Homepage
Faerghail (Remake)
« on: June 10, 2017, 13:17:09 »




My current Blitzmax project beside Extrasolar Origin is a old one - I started 8 years ago with simple Blitz3D tests and now it's becoming better and better. A remake of the old Amiga RPG "Legend of Faerghail" from 1990. Well, I'm getting very familar with OpenB3D now, got my shaders running and I'm still optimizing the BSP loader. At the moment I only have a video and a few screenshots to show the progress, it's still not optimized enough to post a running demo (click images for high resolution).

The torchlight is actually a type 3 spotlight which looks much better than a type 2, all textures use normalmaps and I have a lot of alpha brush models and additional custom B3D models loaded in this level (the knights and the chandliers are plain B3D models (with a shader, too) while the piano and the table are precalculated in the BSP map with a lightmap assigned). I'm not using any dynamic lights except the player torch and a "ambient light torch" to lighten up very dark areas with a decent dark blue tone. The candles, the torches and the fireplaces are simple sprites, not optimized in a single surface mesh yet. The level is absolutely dark except where your "torch" lights it up or the lightmap exists, hard to describe but looks very realistic.

The demo currently runs at 2560x1440 with 280 FPS and has been created using Microsoft Excel ;-) for the basic 2D level structure, a highly sophisticated CSV to MAP tool I wrote myself and the detailed work / compile has been done with a Netradiant fork and Q3MAP2. I'm using 105 different shaded surfaces right now but hope to decrease this number implementing a better shader cache for the BSP meshes like I already did with the B3D models. See some statistics below the screenshots.











Excel view of the level (just basic infos and height information are set)


Output of my CSV2MAP tool (starting a the green square at the top, looking south). All Walls, Doors, Event fields, treasure chests and lights are placed automatically by just parsing the CSV file. The compiled MAP file is then imported into Netradiant, adding more brush detail, models and lights and compiled with the Q3MAP2 tool to a BSP and a lightmap. The BSP is parsed by the engine, building the level structure, adding models/Entities and applying shaders.


If you're interested how it's done here is the Blitz3D source of it (still hadn't time to convert this to BMAX), the original Excel Map and the CSV output used as input:
Download CSV2MAP.bb
Download castle1.xlsx
Download castle1.csv

Netradiant view of the level


BSP Size: 6.820.596 Bytes

Parsing BSP Entities...
1 worldspawn
249 misc_gamemodel
46 func_door
67 info_event
3 info_darkness
3 info_vortex
3 info_trap
4 info_stair
266 light
1 info_player_start
3 fireplace
9 info_candle
10 func_brush
665 Entities found.

Final Map statistics:
Total BSP Surfaces: 94
Total BSP Vertices: 136149
Total BSP Triangles: 45383
Total BSP Models: 57
Solid BSP Level Meshes: 7
Alpha BSP Level Meshes: 50
Level Shaders: 94
Ingame Models (unique): 8
Ingame Models (reused): 241 in Instances
Model Shaders (unique): 11
Model Shaders (reused): 274
Torch Sprites: 16
Candle Sprites: 257
Fireplace Sprites: 3
Parse Time: 831ms
Assemble Time: 189ms
Total Build Time: 1020ms

Update 10.06.2017: there is a *lot* of work to do and unfortunately my three week vacation ends tomorrow. First I ported the whole project to my own OpenB3D Framework as it became too large and I needed to structure it. Then I had to rewrite the whole BSP loader to reuse the Type construct loading another level and added a basic main menu functionality. But I still have a big problem with unloading textures in OpenB3D and there are some nasty memory leaks when I load/reload a level. As soon as these problems are solved and I've added at least the functionality like in my very old B3D demo I'll post a running demo.
« Last Edit: April 18, 2021, 16:30:14 by Krischan »
Kind regards
Krischan

Windows 10 Pro | i7 9700K@ 3.6GHz | RTX 2080 8GB]
My Blitzbasic Archive | Extrasolar Project | My Github projects

Offline MikeHart

  • Hero Member
  • *****
  • Posts: 817
Re: Legend of Faerghail Remake
« Reply #1 on: June 10, 2017, 13:48:52 »
That really looks awesome. Great artwork!

Offline EdzUp

  • Jr. Member
  • **
  • Posts: 98
    • EdzUp
Re: Legend of Faerghail Remake
« Reply #2 on: June 10, 2017, 20:03:24 »
Looking really good what platforms will this be released on, taking into consideration that OSX will become 64bit on for apps and games as of the end of 2018. Vanilla BlitzMax wont cut it on there which is a shame.

Online dawlane

  • Full Member
  • ***
  • Posts: 198
Re: Legend of Faerghail Remake
« Reply #3 on: June 10, 2017, 21:01:23 »
Impressive!

Offline Krischan

  • Full Member
  • ***
  • Posts: 244
    • Krischan's Homepage
Re: Legend of Faerghail Remake
« Reply #4 on: June 11, 2017, 09:53:59 »
Looking really good what platforms will this be released on, taking into consideration that OSX will become 64bit on for apps and games as of the end of 2018. Vanilla BlitzMax wont cut it on there which is a shame.

Platforms: currently Windows (X86) only, but could be ported to OSX and Linux as it is written Blitzmax. But for this I must take a look at NG first and if and how it works with OpenB3D. Beside that some good news, I could fill some memory leaks (hunted 90% down) and made the level loader running in the rewritten BSP parser. And I could even solve my "Multi-Lightmap-Problem" I mentioned in the bb.com thread but for the sake of using more shaders than intended (one per surface). That's not a very elegant solution but for now it is working at all and it's still fast. And added dynamic size buttons to the main menu and a spinning cartwheel loader 8)
Kind regards
Krischan

Windows 10 Pro | i7 9700K@ 3.6GHz | RTX 2080 8GB]
My Blitzbasic Archive | Extrasolar Project | My Github projects

Offline Steve Elliott

  • Hero Member
  • *****
  • Posts: 3237
  • elgol
Re: Legend of Faerghail Remake
« Reply #5 on: June 11, 2017, 10:12:18 »
Some lovely graphics.  Maybe add to the Gallery?
Windows 10 64-bit, 16Gb RAM, Intel i5 3.2 GHz, Nvidia GeForce GTX 1050 (2Gb)
MacOS Big Sur 64-bit, 8Gb RAM, Intel i5 2.3 Ghz, Intel Iris Plus Graphics 640 1536 MB
Linux Mint 19.3 64-bit, 16Gb RAM, Intel i5 3.2 GHz, Nvidia GeForce GTX 1050 (2Gb)
Raspberry pi 3, pi 4, pi 400, BBC B, C64, ZX Spectrum

Offline MikeHart

  • Hero Member
  • *****
  • Posts: 817
Re: Legend of Faerghail Remake
« Reply #6 on: June 11, 2017, 10:13:09 »
Some lovely graphics.  Maybe add to the Gallery?


You can't upload to the gallery atm. I wrote a PM to Qube about it.

Offline Steve Elliott

  • Hero Member
  • *****
  • Posts: 3237
  • elgol
Re: Legend of Faerghail Remake
« Reply #7 on: June 11, 2017, 10:24:45 »
Oh ok, thanks Mike.  I see you've got something to put in the gallery too  ;)
Windows 10 64-bit, 16Gb RAM, Intel i5 3.2 GHz, Nvidia GeForce GTX 1050 (2Gb)
MacOS Big Sur 64-bit, 8Gb RAM, Intel i5 2.3 Ghz, Intel Iris Plus Graphics 640 1536 MB
Linux Mint 19.3 64-bit, 16Gb RAM, Intel i5 3.2 GHz, Nvidia GeForce GTX 1050 (2Gb)
Raspberry pi 3, pi 4, pi 400, BBC B, C64, ZX Spectrum

Offline RonTek

  • Sr. Member
  • ****
  • Posts: 357
Re: Legend of Faerghail Remake
« Reply #8 on: June 21, 2017, 13:51:04 »
Looks good!

Offline Krischan

  • Full Member
  • ***
  • Posts: 244
    • Krischan's Homepage
Re: Legend of Faerghail Remake
« Reply #9 on: January 25, 2018, 22:53:58 »
Bump. There is now a techdemo download available:
http://www.christianhart.de/bmax/lof/LOFdemo.zip

This is my old framework, in the meantime I've ported it to a more sophisticated and object-oriented framework still using BMAX+OpenB3D and I'm working hard on the engine and the data. Don't ask for a release date, not in this decade :D Attached are some screenshots of the new version.
Kind regards
Krischan

Windows 10 Pro | i7 9700K@ 3.6GHz | RTX 2080 8GB]
My Blitzbasic Archive | Extrasolar Project | My Github projects

Offline Yue

  • Hero Member
  • *****
  • Posts: 579
    • YiHosting Your Hosting Free
Re: Legend of Faerghail Remake
« Reply #10 on: January 25, 2018, 23:42:44 »
Hi I tried the demo, but the character goes very fast. You can hear the footsteps but in a moment you cross a room.

Offline Krischan

  • Full Member
  • ***
  • Posts: 244
    • Krischan's Homepage
Re: Legend of Faerghail Remake
« Reply #11 on: January 25, 2018, 23:49:12 »
If the FPS in the upper left text info is over 60 try to set your Vsync flag in your graphic card settings. The demo should run at 60FPS by default (can be switched with the V key to unlimited) but this old framework code is not very smart, the new version uses a multiplicator instead to handle it. Sorry for that.
Kind regards
Krischan

Windows 10 Pro | i7 9700K@ 3.6GHz | RTX 2080 8GB]
My Blitzbasic Archive | Extrasolar Project | My Github projects

Offline therevills

  • Hero Member
  • *****
  • Posts: 661
Re: Legend of Faerghail Remake
« Reply #12 on: January 26, 2018, 00:02:24 »
Downloading now! :)

Edit: I agree with Yue that the player does move quickly even when locked to 60FPS. It plays better when in old skool mode. Would love to wander about in the castle in VR!
« Last Edit: January 26, 2018, 00:14:32 by therevills »

Offline iWasAdam

  • Hero Member
  • *****
  • Posts: 2479
Re: Legend of Faerghail Remake
« Reply #13 on: January 26, 2018, 06:32:11 »
the map 'ball' is a brilliant move. everything looks really crisp and attractive :)

Offline Krischan

  • Full Member
  • ***
  • Posts: 244
    • Krischan's Homepage
Re: Legend of Faerghail Remake
« Reply #14 on: January 26, 2018, 13:45:35 »
Thanks. The crystal sphere existed in the original game, too - but only as a icon and a standard blocky 2D map, so I decided to create a variant how it would look like in 3D. Together with the hand model, a light and some blending it really looks like a magic glass ball with a minimap, and I think the distortion looks ok, too. It is only a sphere mesh with two pixel-perfect aligned 2D sprites for the glow and the glassy look. The map is a grabbed top view 2nd camera applied as a texture to the sphere. It moves smoothly with the player and the torchlight affects the sphere, too.

In the new framework the move speed is adjustable, currently I need to walk very fast through the levels to reach destinations of interest very quickly. This is only one half-finished map of about 29 in total! Lots of work. :o
Kind regards
Krischan

Windows 10 Pro | i7 9700K@ 3.6GHz | RTX 2080 8GB]
My Blitzbasic Archive | Extrasolar Project | My Github projects

 

SimplePortal 2.3.6 © 2008-2014, SimplePortal