Porting GZDoom Builder to Linux

Any utility that assists in the creation of mods, assets, etc, go here.

Re: Porting GZDoom Builder to Linux

Postby Rachael » Thu Jun 27, 2019 5:23 am

gdm413229 wrote:The entire map's 2D and 3D representations could be in the form of VBOs and/or vertex arrays, not display lists. Regenerating display lists are laborious (and they are a performance sink!) when you have a big and/or detailed map on the architect's table.

Are you going to just sit here like 200,000 other idiot armchair devs we've seen, and pretend to know what you're talking about, or are you going to actually help out and code some of this?
User avatar
Rachael
Webmaster
 
Joined: 13 Jan 2004
Discord: Rachael#3767
Twitch ID: madamerachelle
Github ID: madame-rachelle

Re: Porting GZDoom Builder to Linux

Postby Graf Zahl » Thu Jun 27, 2019 6:39 am

Judging from previous posts, I'd assume the former.
User avatar
Graf Zahl
Lead GZDoom Developer
Lead GZDoom Developer
 
Joined: 19 Jul 2003
Location: Germany

Re: Porting GZDoom Builder to Linux

Postby Talon1024 » Fri Jun 28, 2019 11:17 pm

Don't worry, I'm not planning on using display lists. Vertex buffer objects, vertex array objects, and element buffer objects are the way to go for modern OpenGL rendering.

What I plan to do first is to remove or replace the various Windows API calls that are called via DllImports.

I recently tried to replace General.LockWindowUpdate with something like this:
Code: Select allExpand view
public override void Refresh()
{
  if(lockupdatecount == 0)
  {
    base.Refresh();
  }
}

// This locks the window for updating
internal void LockUpdate()
{
lockupdatecount++;
// if(lockupdatecount == 1) General.LockWindowUpdate(this.Handle);
}

// This unlocks for updating
internal void UnlockUpdate()
{
lockupdatecount--;
if(lockupdatecount == 0) Refresh(); //General.LockWindowUpdate(IntPtr.Zero);
if(lockupdatecount < 0) lockupdatecount = 0;
}


I don't know if this will work properly or not, and I don't know why the call to LockWindowUpdate was added in the first place.
Talon1024
 
 
 
Joined: 27 Jun 2016
Github ID: Talon1024
Operating System: Debian-like Linux (Debian, Ubuntu, Kali, Mint, etc) 64-bit
Graphics Processor: nVidia with Vulkan support

Previous

Return to Editors / Asset Manipulation

Who is online

Users browsing this forum: No registered users and 1 guest