Translations for our friends around the world.

Click on banner for Tacview website

Author Topic: DCS World new exporter  (Read 5806 times)

0 Members and 1 Guest are viewing this topic.

Offline Asid

  • *
  • Posts: 26443
DCS World new exporter
« on: October 14, 2016, 08:02:15 PM »
Secretly working on the new exporter for DCS World ;)

No reactions
No reactions
No reactions

I stand against Racism, Bigotry and Bullying

Offline Vyrtuoz

  • Moderator
  • *****
  • Posts: 188
  • Tacview Developer
    • Tacview The Universal Flight Analysis Tool
Re: DCS World new exporter
« Reply #1 on: October 24, 2016, 04:46:52 PM »
As announced a few days ago on Twitter, I have resumed my work on the new Tacview exporter for DCS World.

What have changed during the past 10 years?
  • Battlefields are much busier. Thousand ground and air units are common these days.
  • DCS World can export much more data than ever.
  • Tacview has evolved a lot too and can now manage any kind of data, in astronomical amount, and soon in real-time!
What’s wrong with the current exporter?

The current LUA exporter is now 10 years old. Even if it is working fine, it needs a rejuvenation cure for the following reasons:
  • Made of LUA script, it is not as fast as I would like, especially with overcrowded battlefields. For example, the current export script can take up to 10% of CPU.
  • Because of LUA, many programming features are not available or very complicated/slow to code: For example, it is not possible to compress the exported data.
  • DCS World is now offering an extended API which offers much more possibilities than 10 years ago. For example, it should now be possible to export mission data like waypoints.
What about the new exporter?

The new exporter will be 100% made of C++. Which means that is it going to be as fast and powerful as possible is can be.
  • Deeply optimized and multithreaded the new exporter will take less than 1% of CPU. Please note that this exclude DCS World LoGetWorldObjects() bug explained bellow.
  • Data export frequency and resolution will be tweaked to both same storage space and gives more accurate replays.
  • The created files will be already optimized and compressed. No need to re-save your files from Tacview anymore!
  • An efficient network connection will be possible between DCS World exporter and Tacview so you can see a battlefield evolving in real-time.
  • An anti-cheat system will be implemented so you can delay data review to prevent people from spying your network session while still enabling data export for later debriefing.
  • All cockpit available data will be exported and will be displayable in Tacview telemetry windows and in the HUD view.

Feel free to post any remarks, questions and suggestions on this thread.

About DCS World export performance issue:

DCS World LoGetWorldObjects() currently takes about 20% of CPU. This is a bug which can only be fixed by ED dev team. There is nothing we can do on Tacview site do fix this performance issue. For example: This is the most important export function and we must call it at least once a frame to know what is going on. Because without it, it is not possible to know which objects have been created/deleted/updated.

With Tacview 1.5.1 you can check your DCS.log file after a mission to see by how much CPU Tacview LUA exporter and LoGetWorldObjects() are taking to export data.
For instance, they are respectively taking:
  • Tacview LUA script AddUpdateObjects(): 10% CPU (Tacview side, will be fixed)
  • DCS World LoGetWorldObjects(): 20% CPU (ED dev team side)

Code: [Select]
02995.954 INFO    LuaExport::LuaExportStart: [Tacview.UpdateLog] Profile Time=[30.0s] Frame Rate=[30.9 fps] w/o Export=[44.7 fps] DCS Ratio=[69.0%] Export Ratio=[31.0%]
02995.954 INFO    LuaExport::LuaExportStart: -------- Profiled Section -------- | CallCount | Ratio | Total |
02995.954 INFO    LuaExport::LuaExportStart: AddUpdateObjects(ballistic)        |       926 |  0.1% |  0.0% |
02995.954 INFO    LuaExport::LuaExportStart: AddUpdateObjects(units)            |       926 | 31.2% |  9.7%[/b] |
02995.954 INFO    LuaExport::LuaExportStart: LoGetWorldObjects(ballistic) [C++] |       926 |  0.4% |  0.1% |
02995.954 INFO    LuaExport::LuaExportStart: LoGetWorldObjects(units) [C++]     |       926 | 67.4% | 20.9% |
02995.954 INFO    LuaExport::LuaExportStart: RemoveObjects                      |       926 |  0.6% |  0.2% |
No reactions
No reactions
No reactions


    two newbie questions

    Started by blokovchan

    Replies: 2
    Views: 3391
    Last post March 23, 2018, 12:07:00 PM
    by Asid
    Strategic Tacview in DCS World

    Started by h4rryzin

    Replies: 1
    Views: 2585
    Last post November 15, 2020, 03:44:47 PM
    by BuzyBee
    generate acmi through DCSWorld's trk file

    Started by dizzy27

    Replies: 1
    Views: 7460
    Last post August 02, 2016, 05:12:43 PM
    by Vyrtuoz