Special Aircraft Service

Please login or register.

Login with username, password and session length
Advanced search  
Pages: 1 ... 36 37 38 [39] 40 41 42 ... 51   Go Down

Author Topic: Weekly progress report  (Read 127802 times)

0 Members and 6 Guests are viewing this topic.

Stainless

  • moderator
  • member
  • Offline Offline
  • Posts: 1534
Re: Weekly progress report
« Reply #456 on: April 16, 2020, 12:29:29 PM »

I have so many tools I have written as test apps, it's silly, so I have decided to pull most of them into a single editor.

This of course meant that I had to write a new GUI... I always write a new GUI. It's an addiction.

Normally I search all over the internet for nice textures and spend ages stitching them together into something that looks good, bollocks to that.

I wrote a shader that fakes specular shading for a 2D region and used that throughout. No textures.

Looks okay




Logged

Stainless

  • moderator
  • member
  • Offline Offline
  • Posts: 1534
Re: Weekly progress report
« Reply #457 on: April 19, 2020, 10:31:03 AM »

Seems to be working out well, didn't take very long to generate a map

I found one horrible thing doing this. The shape files which are my source for all the maps are split into elements. Line lists, polygon lists, that sort of thing.

Polygons are just a list of points , so to draw a filled polygon is not a trivial thing.

So I found an open source library called MonoGame.Extended which said it had support for filled polygons, looked nice so I installed it changed my code to use it.

Didn't work. So I looked at the source and it called another open source library called Triangle.

So I got rid of MonoGame.Extended and grabbed Triangle and changed my code to use it. It had loads of different techniques for changing an array of points into a list of triangles.

None of them worked. The GIS data was just too complicated for it.

So I swore a lot. Had a cig. Quick beer.

Then I sat down and wrote  a simple scan line converter based on the first polygon renderer I wrote in assembler 40 years ago. Came out to less than 100 lines of code, and guess what ?

WORKS PERFECTLY!  ;D

Modern techniques are just that MODERN, not necessarily better.





Logged

Ibis

  • member
  • Offline Offline
  • Posts: 145
Re: Weekly progress report
« Reply #458 on: April 20, 2020, 05:36:03 AM »

Amazing work
Logged

Stainless

  • moderator
  • member
  • Offline Offline
  • Posts: 1534
Re: Weekly progress report
« Reply #459 on: May 16, 2020, 03:52:08 AM »

After much thought I have added a scripting system, but as usual this is not a normal scripting system.

I have used C# as the scripting language which means that while developing scripts you can edit them outside the game, but when the script is complete, it can be added to the games source code and built into the game.

To test it is working, I have started the aircraft script for the Spitfire IXc

At the moment I have added the AI driven startup procedure, so it turns on the magnetos, pumps the primer then fires the starter cartridge.

For the debug build , you get a message display you can use from the script to check what is happening. So no need to debug the game, just print out the variables you want to monitor.

The script has access to the renderer, so you can draw debug graphics, and start particle system, etc.

Here you can see the script interface in use.




Now I have to add the merlin engine to the game object and see what happens.



Logged

Stainless

  • moderator
  • member
  • Offline Offline
  • Posts: 1534
Re: Weekly progress report
« Reply #460 on: May 30, 2020, 04:51:24 AM »

A friend of mine saw the physics demo, ever since he has been taking the piss out of me for my ground plane.

Sigh.

This brought me back to airports. So I noticed I had some airports from FSX and decoded the data files used and started my own importer.

Most of the data is simple, runways, towers, objects, pavements, no problem.

But taxiways are a problem.

The storage used is awful.

You have an array of points , then an array of lines.

The array of lines is not organised into chains, just point 234 to point 1290

You can see the lines in the video below.

So I am going to have to write a big chunk of clever code to turn this into something useful.

Before I do this, has anyone seen any code anywhere that does this?

My problem is going to be the junctions. I want to add the correct markings, convert the lines into odd shaped polygons, all sorts of little bits of detail to make it look correct.

Anything anyone throws at me gratefully received.





Logged

edc1

  • member
  • Offline Offline
  • Posts: 222
Re: Weekly progress report
« Reply #461 on: May 30, 2020, 08:01:28 AM »

Hi Stainless,

Just to make matters worse the airfields
In IL2 have hidden spawn points (that you can show if selected)
the only programming I can do is with my satnav!!!
cheers edc1
Logged

Stainless

  • moderator
  • member
  • Offline Offline
  • Posts: 1534
Re: Weekly progress report
« Reply #462 on: June 01, 2020, 12:40:50 PM »

Boundary fence turned out okay.



Logged

Pursuivant

  • member
  • Offline Offline
  • Posts: 711
Re: Weekly progress report
« Reply #463 on: June 01, 2020, 08:30:31 PM »

This brought me back to airports. So I noticed I had some airports from FSX and decoded the data files used and started my own importer.

This seems like fiddly work best left to fans at some point in the future.

If you're wanting to procedurally generate airfields,

ICAO standards are here:

https://www.pilot18.com/icao-annex-14-aerodromes/

USDOD standards for marking modern runways are here:

https://www.wbdg.org/FFC/DOD/UFC/ufc_3_260_04_2018.pdf

The US FAA standards for airfield design, construction and marking are here:

https://www.faa.gov/airports/engineering/design_standards/

The FAA also has some freeware software which might conceivably be useful:

https://www.faa.gov/airports/engineering/design_software/

Useful web page with color graphics which are easily swiped and modified:

https://mycfibook.com/book_pages/airport-signs-markings-and-lighting/

Historical standards for airport construction and marking meaning wading into a massive thicket of archival material. If you can get your hands on them, historical Jeppeson Charts might be the best concentrated source for airfield design and markings from the 1930s on.
Logged

Stainless

  • moderator
  • member
  • Offline Offline
  • Posts: 1534
Re: Weekly progress report
« Reply #464 on: June 02, 2020, 01:03:17 AM »

Thanks mate, that is really useful data.

I chose to work with FSX files because I already wrote code for importing apt.dat airport definitions, but this data has no buildings.

FSX data has buildings and other scene dressing items like stationary aircraft, fire trucks, etc.

I have got to the stage where I really need at least one good looking scene so I can finalise a lot of the renderer and an airport is the perfect stress test.

Logged

Pursuivant

  • member
  • Offline Offline
  • Posts: 711
Re: Weekly progress report
« Reply #465 on: June 02, 2020, 03:20:31 AM »

I have got to the stage where I really need at least one good looking scene so I can finalise a lot of the renderer and an airport is the perfect stress test.

It also helps that a lot of FSX terrain objects are highly detailed, look gorgeous, and there are entire libraries of add-ons.

Of course, they lack that most essential element of flight simulator terrain objects - you can't blow them up! :)
Logged

Stainless

  • moderator
  • member
  • Offline Offline
  • Posts: 1534
Re: Weekly progress report
« Reply #466 on: June 02, 2020, 04:52:24 AM »

Oh I will work on that  :)
Logged

Stainless

  • moderator
  • member
  • Offline Offline
  • Posts: 1534
Re: Weekly progress report
« Reply #467 on: June 04, 2020, 01:53:48 AM »

So coming together






I still have to sort out taxi ways, they are doing my head in.

Looking at the data they are marked as invisible, so I am assuming they are used by AI.

But where the hell are they defined ?

Anyone got any expierience with FSX
Logged
Pages: 1 ... 36 37 38 [39] 40 41 42 ... 51   Go Up
 

Page created in 0.028 seconds with 24 queries.