Git Product home page Git Product logo

3dfxdev / edge Goto Github PK

View Code? Open in Web Editor NEW
70.0 18.0 10.0 80.02 MB

EDGE Source Code

Home Page: http://edge2.sf.net

C 46.12% Makefile 0.58% C++ 49.44% eC 1.68% NSIS 0.03% Awk 0.01% Shell 0.04% Objective-C 0.07% Objective-C++ 0.01% Python 0.03% CMake 0.78% Batchfile 0.01% Roff 0.38% GLSL 0.36% HTML 0.30% R 0.02% PowerShell 0.01% SWIG 0.01% Pascal 0.13%
edge 3dge doom source-port edge-engine dosdoom 3dge-engine hyperedge hyper-3dge ddf

edge's Introduction

Welcome to EDGE!

Build status Build Status EDGE

Generic badgeCodacy BadgeGitHub issues

EDGE is an advanced OpenGL source port spawned from the DOOM engine, with focus on easy development and expansion for modders and end-users.

(C) 1999-2022 The EDGE Team & Contributors

Uses GPL-licensed technology from id Tech 1-4 (C) 1997-2011 id Software, LLC
DOSDoom originally developed by Chi Hoang and the DOSDoom Team, (C) 1997-1999
Visit our sister port which derives from an earlier branch of EDGE, called Edge-Classic. (C) The Edge-Classic Team, 2021-2022

Licensed under the GPLv2 (or greater)

http://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html

--

Development Builds


Occasionally we will package and upload builds for Windows and Linux. You can get these builds via DRDTeam.

  • IMPORTANT: these builds, despite the Git revision that EDGE reports via the console, don't always reflect the commit hash; often they will have their code or content modified in a way that is non-standard to official releases. We are working on an Autobuild system via Github - currently this is only usable for Linux.

Build System for EDGE


To build EDGE, please see the build guides and choose based on your platform and compiler. Some of this information may be out of date; feel free to open up a Github Issue for assistance.

Libraries


For the list of libraries required by EDGE, please see the following document: docs/tech/libraries.txt.

You can also obtain the pre-compiled libraries by looking in the build_guide, depending on what compiler you are planning to use.

The EDGE Team


Team and Contributors

EDGE has and will continue to exist thanks to all the people who contribute.

Development History


Read the historical timeline of EDGE at The Doom Wiki.


Support

  • Visit the EDGE forums and get involved with the community and the various projects for the engine.
  • The EDGEWiki is also a great resource for editing documentation and other information related to the engine.

(C) 1999 - 2022 Isotope SoftWorks and Contributors (The EDGE Team). All Rights Reserved.

edge's People

Contributors

alexey-lysiuk avatar atsb avatar brendoe1 avatar chillywillyguru avatar cmatso avatar corbachu avatar ctd1500 avatar damir00 avatar dashodanger avatar dazombiekiller avatar dpjudas avatar dsdman avatar gameblabla avatar icculus avatar madame-rachelle avatar nukeykt avatar ryan-sg avatar usernameak avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

edge's Issues

build on Pi4

im trying to build on my Pi4 and i very lost on how to get that done.
Im running Retropie so i dont have a desktop. i have to do everthing through the command line.

i have some very basic understanding of cmake. but i cant figure out the correct options to get it to go

sorry im if i sound like a idiot im trying to learn the best i can with this stuff so i can stop asking silly question like this

Screen Wiping Messed Up

Compiling with Visual Studio messes up the RGL_Wipe code, specifically the Screen Melt effect (no other wipe transitions are affected). Under GCC, it works normally.

Something is wrong with that code - we need to address it ASAP.

mods acting pretty weird on current master

After getting a working build again after #61 #62 #63 i set to work trying out things like doomforever and duke it out in doom.

In doomforever it seems that weapons that cause knockback make the knockback 'always on' (i.e. after firing rocket launcher my player always wants to backpedal cruise-control style) pressing +forward will still go fwd

in duke it out in doom duke is very talkative, seems all his random quips are playing in a loop on repeat. after blowing something up that cause guts, the blood and guts endlessly played on-screen as well. and using the shrinkray and trying to step on an enemy made my display wig out constantly as the game wanted to pan down for the step, but also fought itself to recenter :-D

Perhaps these are all known type issues since it seems heavy construction is occurring, cheers!

Very critical bug

I've built it. Launched. After loading it has closed and my screen became brighter! (brightness has fixed after reboot, but still not launching)

is github synced with the latest hyper3dge 2.0.2 changes?

Hi! I don't know any other place I can ask this, trying to register on the forums doesn't seem to be working for me right now...known issue?

Just wanting to know if this github repo is the main source for hyper3dge or just a mirror that gets occasionally updated?

I have a copy of master checked out and managed to build it on OpenBSD with some changes, but noticed some issues in my build that are marked as fixed in the 2.0.2 changelog, such as ssg showing in doom1. typing 'version' in the console of my build says 3DGE v2.0.1, but i'm using edge2.wad, and doom_ddf files from the 2.0.2 release.

cheers, thanks for all your efforts!

sound loop when enemy drops weapon too close to walls (ex. doomforever-redux)

As I originally tried to report in #27, though completely incorrect hypothesis, I have discovered the exact cause!

Map02 works good because there are corridors with lots of enemies that are likely to die near a wall, when they drop their weapon (shotguys, former humans both) and it lands really close to a wall, the sprite is clipped into the wall a bit. When this happens, the drop sound repeats endlessly.

I isolated one enemy and shot him and got the sound started. Once the sound looped, I dispersed enough ammunition to be able to pick up the dropped rifle close to the wall. Once picked up, the sound stopped! Hooray!

I have a save file attached, hopefully it works for you to be able to load the problem. It should load with the sound playing, shoot off a shotgun round so you can pick it up and the sound should stop.

slot023.zip
need to run 3dge with the doomforever-redux mod as its a good example with enemies dropping guns with extra sounds and stuff.

SDL_SetWindowBrightness not working on Ubuntu

SDL_SetWindowBrightness is used for the gamma setting but it doesn't work on Ubuntu for some reasons, only Windows.
It also didn't work when EDGE was using its libSDL 1.2 equivalent, SDL_SetGamma.
Someone reported the issue to libSDL but its developers refused to acknowledge the issue.

To work around this, we could simply use a transparent white square to imitate gamma settings like so in i_video.cc in function I_FinishFrame :


glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
glBegin(GL_QUADS);
glColor4f(255.0f, 255.0f, 255.0f, 0.15f);
glVertex3i(0,0,0);
glVertex3i(display_W,0,0);
glVertex3i(display_W,display_H,0);
glVertex3i(0,display_H,0);
glEnd();
glColor4f(1, 1, 1, 1);

However, this code needs to be improved in order to take in account the gamma settings.
Also for some reasons, using display_W and display_H don't get changed when the end user changes the resolution during the game.

We could ifdef this for Linux if this code bothers you.
But without a fix, the low brightness makes some games (such as mine, SANIK DA 3DGEHOG) unplayable.
Please consider fixing this.

Mac M1 Support for Cmake

Generating a Unix Makefile for an M1 Mac incorrectly adds -mtune=cortex to some build arguments for coal.

M1 Macs do not support and do not require regular ARM mtune arguments (Apple Clang on M1 does not support them either). These need to be removed when generating on an M1.

No textures found on darkwar.wad

debug.txt

When i execute ./EDGE ./darkwar.wad in linux show this error:

 No textures found !  Make sure the chosen IWAD is valid.

I have these files and folders on the directory:

 base
 soundfont
 darkwar.rtc
 darkwar.rtl
 darkwar.wad
 demo1_3.dmo
 demo2_3.dmo
 demo3_3.dmo
 demo4_3.dmo
 edge.epk
 EDGE
 huntbgin.rtc
 huntbgin.rtl
 remote1.rts

These files were extracted from GOG version

Possible Future Feature: INI Parsing for Engine Configuration (replacing edge2.cfg)

I would like to take some time and weigh in options about using the INI format as a replacement to our own CFG file that EDGE creates. I would like to move to something more robust as far as the configuration file is concerned. Using something more modern like INI over our engine-created CFG file could yield benefits, and increase neatness.

Plus, I would like to move the CFG configuration as a whole into an 'autoexe.cfg', much like how QUAKE does it, so modders can set hard limits/switches/cvars/etc in their mods. EDGE would look for 'autoexec.cfg' in the mod folder or EPK root. We don't need to support this for WAD format, only external directories or EPK/PK3/PK7 archives.

I know we have a .preset file, but I feel that was only a temporary solution to what we want to achieve.

  • With INI, we could get rid of 'EDGE2.cfg' and just opt for edge-[user].ini, much like how ZDoom does now.
  • Move the CFG configuration out of the root and use it for user-definable switches in mods, while renaming the file 'autoexec.cfg', much like how 'edge.preset' acts, but this would of course be more robust as it would technically clone EDGE2.cfg in some aspects.
  • Library I am referencing below is built in C and is really lightweight, or we could create our own.
  • Remove volatile 'edge.preset'

This would also give us the advantage when we eventually redo the EDGE IWAD interface as we can have per-engine INI configuration files (Doom, Rise of the Triad, Heretic, etc), or we could keep those contained to EDGE's existing CFG files.

Fellow developers: I would like your suggestions and/or thoughts on this topic (@raa-eruanna @ChillyWillyGuru /etc)

This idea came from the following GIT project: INIH

No GL Display on Linux

Currently, when attempting to run 3DGE on linux, all you get is a black display.
Last commit before that to work with few modifications was the git commit from December 7.
When raa-eruanna attempted to fix Linux support after some windows code was added in src/system/i_video.cc, he actually broke the display on Linux.
(c90b785)

Fix is fairly trivial, its only a few lines of code.
I'll post a PR very shortly here.

Replacing GLEW

Okay, so as you guys might know, I want to strip 3DGE of all GLEW-related stuff in favor of a faster, smaller API to handle OpenGL. Glew is too large, and loads way too much information about GL when we only (for now) use a small set of GL extensions (in RGL_CheckExtensions) -- which we could probably rewrite as well. . .

I have committed a library containing a few headers into a folder inside /src named "GLAD". It seemed like a smaller, decent solution.

However, we do have a few more options:

LibEpoxy

(https://github.com/anholt/libepoxy)

GlLoadGen (https://bitbucket.org/alfonse/glloadgen/wiki/Home)

GLAD

https://github.com/Dav1dde/glad

glBinding

https://github.com/cginternals/glbinding

Reference Sheet

https://www.opengl.org/wiki/OpenGL_Loading_Library

I would like all developers to weigh in on this and see what will work best for us.

One thing is certain: GLEW is not part of 3DGE's future, so we should look into this before creating the new release build (2.1.0).

Linux build crashes

hyper3DGE git build (latest commit as of 01/13/18). Running Arch linux kernel 4.14.13. i7 4720hq processor, nvidia gtx 960m, and 16 gigs of ram. I have all dependencies installed.

While hyper3DGE compiles just fine, running the binary does nothing.

Steps to reproduce:

  1. Compile hyper3DGE (I used the cmake build system)
  2. copy over 'data' directory to directory with binary
  3. copy over any iwads/pwads (ie DOOM2.WAD)
  4. ./3DGE -iwad DOOM2.WAD
  5. Expected behavior: doom 2 runs.
  6. Actual behavior: nothing happens (no error messages or the like given)

I have also tried ./3DGE -ddf doom_ddf -iwad DOOM2.WAD with the same results.
Thanks again.

FEATURE: MP3 Support

Software patents for the MP3 format expired in 2017. After finding out that older versions of EDGE had MP3 support, I thought I'd raise the alarm by saying, "MP3 is free now!"

Bringing back MP3 support would be great, which would mean that I can play MP3 music from SIGIL_SHREDS.wad, a paid enhancement to The Ultimate Doom MegaWAD "Sigil."

Very slow performance and heavy stuttering on Linux

Hello,
Since a year ago or so, the Linux version was not running smoothly.
Even when the fps counter is at 59 FPS, it still stutters like mad.
3DGE was compiled with both extreme optimisation "-O3 -march=native -mtune=native" and the default ones.
No matter what you're playing, the engine stutters a lot, even though the fps counter says the game runs fine.
This was on a Ryzen 5 1500X 3.5 Ghz (SMT disabled) with a Geforce 780.

On an older laptop with a Pentium Dual Core 2 Ghz and an Intel GM45 chipset, it runs even worse.
It used to run okay in 2015/early 2016 until interpolation was added.
Even with interpolation disabled, it still runs like crap.
At a high resolution (720p), it freezes after playing the first map for 2/3 seconds.
I had to lower the resolution to 640x480 to make it run without any weird freezes and even then,
it was skipping a lot of frames.

I also tried to disable post-rendering effects in the code and it help a bit but couldn't remove the stutter.
Do you suffer from stuttering issues on Windows ? Seems like not.
Is this caused by a poor frame-skipping code ? It skipped frames on my older laptop so there must be something like that.

I thought that maybe that was an issue with system libraries but i recompiled an older version with the current system libraries and it ran fine.

Changing any boolean option through menu doesn't update the CVar

Steps to reproduce:

  1. Set any boolean cvar through options menu
  2. Try to lookup it through console
  3. You will get the old value!

If you set the variable thru console, it will be OK.

Please fix it because it makes me unable to update the config format. They don't get saved if i set them through menu!

p.s. i have linux

Will not compile

Using arch linux kernel 4.14.13. Nvidia Geforce gtx 960m, intel core i7 4720hq processor. GNU g++ compiler on the cmake build system.

home/dylan/apps/src/hyper3DGE/src/tarray.h:98:35: error: macro "Z_New" requires 2 arguments, but only 1 given
Array = (T *)Z_New(sizeof(T)*max);
^
tarray.h:301:37: error: macro "Z_New" requires 2 arguments, but only 1 given
Array = (T *)Z_New(sizeof(T)*Most);
^
tarray.h:634:44: error: macro "Z_New" requires 2 arguments, but only 1 given
Nodes = (Node *)Z_New(Size * sizeof(Node));

player movement 'inertia' seems funny in 3dge

So, I have noticed this for a very, very long time. It is probably the only thing that annoys me a bit about the edge engine and thus 3dge that follows.

When moving around at high speed, if you hit a wall, to move away from it it almost feels like you are fighting the marine from trying to continue to run into the wall. It seems like the game keeps player movement inertia going even after hitting a wall, something that the original game seems to stop from happening once you hit something.

A good test is any map with an exit behind a door in a straight line -- if you run full tilt at the door, as you hit the door, release the forward key and hit the open button, the marine blazes through the door once it opens at the same rate of speed as if you were still holding forward key. Works best on those 'quick' doors.

I hope I've explained this well enough, the effect causes you to kinda 'stick' to things when you hit them at high speed making counter-retreat harder. I am not sure the functions in use here, but if there is something that dictates movement of the player from ..inertia or gravity if you will, should it maybe reset to 0 once the player hits an immovable object/wall so that movement in another direction doesn't have to wait for the 'slow down' of running into said immovable object/wall?

unable to run 'Duke it out in DOOM' mod with current master

Can anyone else run the current version of Duke it out in DOOM with the current version of hyper3dge? The current version of the mod is 1.8, fails as such:

edit: as an additional note, an older version of the mod that I still have, v1.5b, still seems to work okay. seems strange that the mod's changelog lists. I notice that their changelog notes for v1.6 say "Menus tweaked to support changes made in 3DGE 2.0.3", I will check and see if that version also fails.

01:27 ryan@iddqd:3dge$ ./3dge -file duke/DukeOut.wad                                                                         
3DGE v2.1.0 - TEST 1 compiled on Jun 21 2016 at 23:20:05
hyper3DGE homepage is at http://edge2.sourceforge.net/
hyper3DGE is based on DOOM by id Software http://www.idsoftware.com/
hyper3DGE problems should be reported at http://tdgmods.net/smf
Command-line Options:
  ./3dge 
  -file duke/DukeOut.wad
3DGE cannot detect your Processor Type!
M_LoadDefaults from /home/ryan/.EDGE2/EDGE2.cfg
SDL_Video_Driver: default
I_StartupGraphics: initialisation OK
Desktop resolution: 0x0
I_StartupControl: 0 joysticks found.
SDL_Audio_Driver: default
I_StartupSound: trying 44100 Hz, 16 bit Stereo
I_StartupSound: Success @ 44100 Hz, 16 bit Stereo
I_StartupMusic: OPL Init OK
Loading Timidity config: ./8MBGMPAT/timidity.cfg
I_StartupMusic: Timidity Init OK
>> LocalHostName: iddqd.inter.lan
>> LocalAddress: 10.21.8.129
> name =    lo0
> family = 24
> name =       
> family = 0
> name =       
> family = 0
> name =       
> family = 0
> name =       
> family = 0
> name =       
> family = 128
> name =       
> family = 0
> name =     .+
> family = 115
> name =     ..
> family = 67
> name =       
> family = 0
> name =   .W..
> family = 0
> name =  ..p.+
> family = 0
> name =       
> family = 200
> name =    re0
> family = 0
> name =   enc0
> family = 0
> name =  urtw0
> family = 0
> name = pflog0
> family = 0
I_StartupNetwork: Initialised OK.
Available Resolutions:

I_SetScreenSize: trying 1024x768 32bpp (fullscreen)
OpenGL: Initialising...
OpenGL: Version: 3.0 Mesa 11.2.2
OpenGL: Renderer: Gallium 0.4 on AMD RV770 (DRM 2.29.0)
OpenGL: Vendor: X.Org
OpenGL: GLEW version: 1.12.0
OpenGL: Lights: 8  Clips: 8  Tex: 8192  Units: 8
Drawing progress 0 -1
Drawing progress 1 -1
Drawing progress 2 -1
Drawing progress 3 -1
Drawing progress 4 -1
  Adding ./doom2.wad
  Adding /home/ryan/.EDGE2/cache/doom2-1324C9-AD8C38.gwa
  Adding ./EDGE2.wad
  Adding ./duke/DukeOut.wad
Drawing progress 8 -1
Loaded global palette.
Drawing progress 9 -1
Drawing progress 11 -1
W_InitFlats...
Drawing progress 14 -1
W_InitTextures...
Drawing progress 16 -1
Drawing progress 18 -1
Drawing progress 21 -1
Drawing progress 23 -1
Drawing progress 24 -1
EDGE2.WAD version 8.00 found.
Drawing progress 25 -1
Drawing progress 26 -1
Loading external Languages
Loading DDFLANG from: ./duke/DukeOut.wad
Loading external Sounds
Loading DDFSFX from: ./duke/DukeOut.wad
Drawing progress 27 -1
Loading external ColourMaps
Loading DDFCOLM from: ./duke/DukeOut.wad
Drawing progress 28 -1
Loading external Images
Loading DDFIMAGE from: ./duke/DukeOut.wad
Drawing progress 29 -1
Loading external Fonts
Drawing progress 30 -1
Loading external Styles
Loading DDFSTYLE from: ./duke/DukeOut.wad


DDF_MainGetColourmap: No such colourmap 'TEXT_MENU_GREY'
Error occurred near line 45 of DDFSTYLE
Error occurred in entry: [OPTIONS]
Line contents: TITLE.COLOURMAP="TEXT_MENU_GREY"; // selecting a string color

Feature/Renderer: fix up glBindAttribLocation

From r_bumpmap:
glBindAttribLocation(h_prog,3,"tangent");

Nvidia cards cannot handle passing the tangent value (possibly due to SDL2 OpenGL context handling); since it cannot make it available, rendering for everything in a level but the skybox is pure black.

IWAD handling (EGM vs INI)

So, now that we have proper INI support, one of the big things I want to do is change how IWADS are handled. Currently, EDGE has a list of defined IWADS in e_main, but of course it only loads what is found in root. My plan here is to change this, perhaps implementing GTK3 handling from QZDoom, or something alike that will give the user a list of current IWADS found and which one it wants to load.

I was also thinking of making it smarter when it comes to handling DOOM episodes - in the case of DOOM, DOOM 2, and SIGIL all being present, give the user the option to load all three at once to give the full episode list. Currently this works perfectly on EDGE out of box, but only if you drag both Doom.wad and SIGIL.wad over EDGE’s executable with DOOM2 present in the directory.

At any rate, the code in e_main is old and was continually patched over, so implementing proper IWAD handling would be awesome.

Another related item is that if EDGE detects unknown IWADS with the magic number, we can list those as well. DARKWAR will also need to be listed.

Conversely, we could also support loading text files named .EGM and have INI point to that. See the following: EGM Specification Tech Sheet

So either basic strings in the INI that gets written if user selects always remember IWAD (maybe we can also give them an option to manually browse for those). Or we implement the EGM format and have EDGE’s INI look for those and determine IWAD and PWAD handling, which would be pretty clean for modders to use as well.

[EGM]
IWAD=%s;
PWAD=DOOM, SIGIL;
//Optional below?
IWAD_PATH=%s;
EGM_MODULE=%s;

Ideally, we would need the system to load the proper namespaces externally in the root ./base folder as well (this is all working but it is very buggy as it was all hacked in over existing code, the dreaded DDF_DIR string), or we could just have EGM work that out for us. Might need to additionally take a look at WAD management handling in w_wad (which also desperately needs a total rewrite).

Comments and/or thoughts on plan of action or implementation concerns?

Networking Overhaul

I think it would be a good idea for the team to start focusing on the networking code. Part of the reason interpolation is wonky is because it is tied to the in completed networking code in EDGE (n_network.cc).

I strongly feel that in order for us to fix the interpolation code, we need to fix the networking stuff. When I say that, I don't necessarily mean communication over the internet, but port intricacies that are affected by that unstable part of the codebase.

We should begin brainstorming to see what should be tackled first. My first thought is the tic handling code, which feels messy.

fails to build on os x

$ make -f Makefiles/Makefile.osx
mkdir -p obj_macosx/coal
mkdir -p obj_macosx/ddf
mkdir -p obj_macosx/deh_edge
mkdir -p obj_macosx/edge
mkdir -p obj_macosx/md5_conv
mkdir -p obj_macosx/md5_conv/kmq2
mkdir -p obj_macosx/epi
mkdir -p obj_macosx/glbsp
mkdir -p obj_macosx/timidity
mkdir -p obj_macosx/macosx
g++ -O3 -ffast-math -fno-strict-aliasing -Wall -pipe -msse2 -mfpmath=sse -I. -DDEVELOPERS -DSSE2  -DMACOSX -iframework/Library/Frameworks -D_GNU_SOURCE=1 -D_THREAD_SAFE -Ilib_macosx/libpng -Ilib_macosx/libjpeg-turbo/include -I/usr/local/include -DUSE_OGG -I/usr/local/include/libcpuid -o obj_macosx/edge/p_setup.o -c src/p_setup.cc
src/p_setup.cc:1669:26: error: use of undeclared identifier 'uint'; did you mean 'int'?
 int oVerts = ((u32_t)(*(uint *)td));
                         ^~~~
                         int
src/p_setup.cc:1669:31: error: expected '(' for function-style cast or type construction
 int oVerts = ((u32_t)(*(uint *)td));
                         ~~~~ ^
src/p_setup.cc:1669:32: error: expected expression
 int oVerts = ((u32_t)(*(uint *)td));
                               ^
src/p_setup.cc:1678:26: error: use of undeclared identifier 'uint'; did you mean 'int'?
 int nVerts = ((u32_t)(*(uint *)td));
                         ^~~~
                         int
src/p_setup.cc:1678:31: error: expected '(' for function-style cast or type construction
 int nVerts = ((u32_t)(*(uint *)td));
                         ~~~~ ^
src/p_setup.cc:1678:32: error: expected expression
 int nVerts = ((u32_t)(*(uint *)td));
                               ^
src/p_setup.cc:1744:23: error: use of undeclared identifier 'uint'; did you mean 'int'?
   v1num = ((u32_t)(*(uint*)td));
                      ^~~~
                      int
src/p_setup.cc:1744:27: error: expected '(' for function-style cast or type construction
   v1num = ((u32_t)(*(uint*)td));
                      ~~~~^
src/p_setup.cc:1744:28: error: expected expression
   v1num = ((u32_t)(*(uint*)td));
                           ^
src/p_setup.cc:1755:23: error: use of undeclared identifier 'uint'; did you mean 'int'?
   v1num = ((u32_t)(*(uint*)td));
                      ^~~~
                      int
src/p_setup.cc:1755:27: error: expected '(' for function-style cast or type construction
   v1num = ((u32_t)(*(uint*)td));
                      ~~~~^
src/p_setup.cc:1755:28: error: expected expression
   v1num = ((u32_t)(*(uint*)td));
                           ^
src/p_setup.cc:1766:21: error: expected ')'
  if (v1num < (uint)numvertexes)
                    ^
src/p_setup.cc:1766:6: note: to match this '('
  if (v1num < (uint)numvertexes)
     ^
src/p_setup.cc:1766:16: error: use of undeclared identifier 'uint'
  if (v1num < (uint)numvertexes)
               ^
src/p_setup.cc:1856:2: warning: 'delete' applied to a pointer that was allocated with 'new[]'; did you mean 'delete[]'? [-Wmismatched-new-delete]
 delete ss_temp;
 ^
       []
src/p_setup.cc:1712:17: note: allocated with 'new[]' here
 int *ss_temp = new int[numsubsectors];
                ^
src/p_setup.cc:1883:24: error: use of undeclared identifier 'uint'; did you mean 'int'?
 numnodes = ((u32_t)(*(uint*)td));
                       ^~~~
                       int
src/p_setup.cc:1883:28: error: expected '(' for function-style cast or type construction
 numnodes = ((u32_t)(*(uint*)td));
                       ~~~~^
src/p_setup.cc:1883:29: error: expected expression
 numnodes = ((u32_t)(*(uint*)td));
                            ^
src/p_setup.cc:1932:33: error: use of undeclared identifier 'uint'; did you mean 'int'?
   nd->children[j] = ((u32_t)(*(uint*)td));
                                ^~~~
                                int
src/p_setup.cc:1932:37: error: expected '(' for function-style cast or type construction
   nd->children[j] = ((u32_t)(*(uint*)td));
                                ~~~~^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
1 warning and 20 errors generated.
make: *** [obj_macosx/edge/p_setup.o] Error 1

unx_main.cc conflicts with i_main.cc on Linux

unx_main.cc conflicts with i_main.cc on Linux

CMakeFiles/3DGE.dir/src/system/unx/unx_main.cc.o: In function `main':
unx_main.cc:(.text.startup+0x0): multiple definition of `main'
CMakeFiles/3DGE.dir/src/system/i_main.cc.o:i_main.cc:(.text.startup+0x0): first defined here
collect2: ошибка: выполнение ld завершилось с кодом возврата 1
make[2]: *** [CMakeFiles/3DGE.dir/build.make:5854: 3DGE] Ошибка 1
make[1]: *** [CMakeFiles/Makefile2:105: CMakeFiles/3DGE.dir/all] Ошибка 2
make: *** [Makefile:84: all] Ошибка 2

crash when multiplayer menu selected

This might be already known since menus are being worked on, but just in case:

15:31 ryan@iddqd:3dge$ ./3dge
3DGE v2.1.0 - TEST 2 compiled on Aug 27 2016 at 12:16:45
hyper3DGE homepage is at http://edge2.sourceforge.net/
hyper3DGE is based on DOOM by id Software http://www.idsoftware.com/
hyper3DGE problems should be reported at http://tdgmods.net/smf
Command-line Options:
  ./3dge 
==============================================================================
E_ShowCPU: detected GenuineIntel CPU
E_ShowCPU: `Intel(R) Core(TM)2 Quad  CPU   Q9300  @ 2.50GHz'
E_ShowCPU: clocked at -1 MHz (according to your OS)
==============================================================================
M_LoadDefaults from /home/ryan/.EDGE2/EDGE2.cfg
SDL_Video_Driver: default
I_StartupGraphics: initialisation OK
Desktop resolution: 1440x900
I_StartupControl: 0 joysticks found.
SDL_Audio_Driver: default
I_StartupSound: trying 44100 Hz, 16 bit Stereo
I_StartupSound: Success @ 44100 Hz, 16 bit Stereo
I_StartupMusic: OPL Init OK
Loading Timidity config: ./8MBGMPAT/timidity.cfg
I_StartupMusic: Timidity Init OK
>> LocalHostName: iddqd.inter.lan
>> LocalAddress: 10.21.8.129
I_StartupNetwork: Initialised OK.
Available Resolutions:
  1440x 900 @ 24 FS   1280x1024 @ 24 FS   1280x 960 @ 24 FS 
  1152x 864 @ 24 FS   1024x 768 @ 24 FS    832x 624 @ 24 FS 
   800x 600 @ 24 FS    720x 400 @ 24 FS    640x 480 @ 24 FS 
   320x 200 @ 24 win   320x 240 @ 24 win   400x 300 @ 24 win
   512x 384 @ 24 win   640x 400 @ 24 win   640x 480 @ 24 win
   800x 600 @ 24 win  1024x 640 @ 24 win  1024x 768 @ 24 win
  1280x 720 @ 24 win  1440x 900 @ 24 win
I_SetScreenSize: trying 1440x900 24bpp (fullscreen)
==============================================================================
OpenGL: Initialising...
OpenGL: Version: 3.0 Mesa 11.2.2
OpenGL: Renderer: Gallium 0.4 on AMD RV770 (DRM 2.29.0)
OpenGL: Vendor: X.Org
OpenGL: GLEW version: 1.12.0
OpenGL: Lights: 8  Clips: 8  Tex: 8192  Units: 8
==============================================================================
Drawing progress 0 -1
Drawing progress 1 -1
Drawing progress 2 -1
Drawing progress 3 -1
Drawing progress 4 -1
Drawing progress 5 -1
  Adding ./doom2.wad
  Adding /home/ryan/.EDGE2/cache/doom2-1324C9-AD8C38.gwa
  Adding ./edge2.wad
Drawing progress 9 -1
Loaded global palette.
Drawing progress 10 -1
Drawing progress 12 -1
W_InitFlats...
Drawing progress 14 -1
W_InitTextures...
Drawing progress 18 -1
Drawing progress 21 -1
Drawing progress 24 -1
Drawing progress 25 -1
EDGE2.WAD version 8.00 found.
Drawing progress 26 -1
Drawing progress 27 -1
Loading external Languages
Loading external Sounds
Drawing progress 28 -1
Loading external ColourMaps
Drawing progress 29 -1
Loading external Images
Drawing progress 30 -1
Loading external Fonts
Drawing progress 31 -1
Loading external Styles
Drawing progress 32 -1
Loading external Attacks
Drawing progress 33 -1
Loading external Weapons
Drawing progress 34 -1
Loading external Things
Drawing progress 35 -1
Loading external Playlists
Drawing progress 36 -1
Loading external Lines
Drawing progress 38 -1
Loading external Sectors
Drawing progress 39 -1
Loading external Switches
Drawing progress 40 -1
Loading external Anims
Drawing progress 41 -1
Loading external Games
Drawing progress 42 -1
Loading external Levels
Drawing progress 43 -1
Loading external RadTrig
Drawing progress 44 -1
Drawing progress 45 -1
Drawing progress 46 -1
Drawing progress 47 -1

+.+|+.+.,+.+.,+.+.+|+.`+.+|+.+.,+.,+.+.+.+|+.+.,+.+.,+.+.+|+.`+.+|+.+.,+.

..................... .....................  ..................... ........................
........................................................................ ........................
 ..............................  ..................  ..............................  
 ..............................  ..................   ...........................  
...................................................................................................
..................... .....................  ..................... ........................
                 ...+++...-+......              
   (C) Isotope SoftWorks            


 Visit the Wiki @               
  http://3dfxdev.net/edgewiki   


             DDFVer 7.0             

+.+|+.+.,+.+.,+.+.+|+.`+.+|+.+.,+.,+.+.+.+|+.+.,+.+.,+.+.+|+.`+.+|+.+.,+.

Drawing progress 48 -1
Drawing progress 49 -1
WARNING: Unable to add image lump: CONSOLE
Drawing progress 50 -1
Drawing progress 51 -1
Drawing progress 52 -1
Drawing progress 53 -1
Drawing progress 54 -1
Drawing progress 55 -1
Drawing progress 56 -1
Drawing progress 57 -1
Drawing progress 58 -1
W_InitSprites: Finding sprite patches
Drawing progress 64 -1
Drawing progress 65 -1
Drawing progress 66 -1
Drawing progress 67 -1
Drawing progress 68 -1
Drawing progress 72 -1
Drawing progress 73 -1
Drawing progress 74 -1
Drawing progress 75 -1
Drawing progress 76 -1
Drawing progress 77 -1
Drawing progress 80 -1
W_InitModels: Setting up
Drawing progress 81 -1
Drawing progress 82 -1
Drawing progress 85 -1
Drawing progress 86 -1
Drawing progress 87 -1
Drawing progress 88 -1
I_StartupSound: Init 32 mixing channels
Drawing progress 89 -1
Network: base port is 26710
N_StartupReliableLink: OK
>>> my_addr (bc) : 0.0.0.0:26711
N_StartupBroadcastLink: OK
Drawing progress 90 -1
Drawing progress 91 -1
Drawing progress 92 -1
Compiling COAL script: ./doom_ddf/coal_api.ec
Compiling COAL script: ./doom_ddf/coal_hud.ec
Drawing progress 100 -1
EDGE2 v2.1.0 - TEST 2 system ready.

Assertion 'style' failed in M_Drawer (src/m_menu.cc:2572).
15:33 ryan@iddqd:3dge$ 

Give me some precompiled libraries

Give me some precompiled libraries for Windows, namely SDL, GLEW and libpng because I can't compile them to try some changes I have made

How to change argument

DEBUG.TXT:
debug.txt

Describe the bug
It is not exactly an bug but when I try to run anything, even the Doom II IWAD itself, the console says it can't open preset because it is using default args(arguments).

To Reproduce
Steps to reproduce the behavior (any WAD or EPK)

  1. Grab the archive
  2. Drag it to EDGE.exe
  3. It was supposed to run normally
  4. See error

Expected behavior
Run normally. Also the version is 2.0.1

Screenshots
If applicable, add screenshots to help explain your problem.image
Additional context
...

Makefile.bsd gone?

What happened? I saw the merge go in and it was there, but now its not there at all, did the pull request get ...pulled back out? ;)

New Renderer Fixup

Describe the bug
GL3+ Path still has dynamic lighting issues in the new renderer.

To Reproduce
Turn on GL3 Mode either from options or the CVAR

Expected behavior
Lighting seems backwards (rendering distance reversed?)

Screenshots
If applicable, add screenshots to help explain your problem.

Additional context
Add any other context about the problem here.

Doom, line action type troubles

Hi, I noticed a couple of Doom line action types behaving unexpectly. I briefly describe them here. I know they should have been reported separately but they all seem like minor errors.

Boom reference: https://soulsphere.org/projects/boomref/
Test wads (Doom2 MAP01): testwads.zip


65: SR Raise floor 8 below the lowest next ceiling

In Edge type 65 will raise the floor to 8 over the lowest next ceiling. The other same type lineactions 55 (S1), 94 (WR), 56 (W1) target to the 8 below.


20: S1 Raise floor to the next, change texture and remove effect

It works now according to the numeric model. The tagged floor's flat texture is changed to match the sector behind the sector's lowest numbered 2s linedef.

But it should use the trigger model instead and change the texture to the one in front of the triggered action line's first side. The other linetypes 68 (SR), 95 (WR), 22 (W1) and 47 (G1) of the same kind are using the trigger model.


198: G1 Exit level to the Secret level

It currently leads to the next level the same way as the normal exit.

Unable to get past 3rd step from the CMake/Visual Studio Building Instructions page.

This is my first time trying to compile anything from source code, and i am trying to follow the build instructions page and clicking generate causes an error message to appear:

CMake Error at C:/Program Files/CMake/share/cmake-3.20/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
  Could NOT find SDL2 (missing: SDL2_LIBRARY SDL2_INCLUDE_DIR)
Call Stack (most recent call first):
  C:/Program Files/CMake/share/cmake-3.20/Modules/FindPackageHandleStandardArgs.cmake:594 (_FPHSA_FAILURE_MESSAGE)
  cmake/FindSDL2.cmake:171 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
  CMakeLists.txt:82 (find_package)

I'm quite new to GitHub so I apologise if I'm doing anything wrong, just wanted a bit of help ^^

Failure to build on Gentoo Linux

Here's the logs, I am using the CMake version:

localhost build # make
Scanning dependencies of target updaterevision
[ 0%] Building C object tools/updaterevision/CMakeFiles/updaterevision.dir/updaterevision.c.o
[ 1%] Linking C executable updaterevision
[ 1%] Built target updaterevision
Scanning dependencies of target revision_check
src/gitinfo.h updated to commit 2.1.0pre-426-gacac427.
[ 1%] Built target revision_check
Scanning dependencies of target 3DGE
[ 1%] Building CXX object CMakeFiles/3DGE.dir/coal/c_compile.cc.o
[ 1%] Building CXX object CMakeFiles/3DGE.dir/coal/c_execute.cc.o
[ 2%] Building CXX object CMakeFiles/3DGE.dir/coal/c_memory.cc.o
[ 2%] Building CXX object CMakeFiles/3DGE.dir/ddf/anim.cc.o
[ 3%] Building CXX object CMakeFiles/3DGE.dir/ddf/attack.cc.o
[ 3%] Building CXX object CMakeFiles/3DGE.dir/ddf/boom.cc.o
[ 4%] Building CXX object CMakeFiles/3DGE.dir/ddf/colormap.cc.o
[ 4%] Building CXX object CMakeFiles/3DGE.dir/ddf/font.cc.o
[ 4%] Building CXX object CMakeFiles/3DGE.dir/ddf/game.cc.o
[ 5%] Building CXX object CMakeFiles/3DGE.dir/ddf/image.cc.o
[ 5%] Building CXX object CMakeFiles/3DGE.dir/ddf/language.cc.o
[ 6%] Building CXX object CMakeFiles/3DGE.dir/ddf/level.cc.o
[ 6%] Building CXX object CMakeFiles/3DGE.dir/ddf/line.cc.o
[ 7%] Building CXX object CMakeFiles/3DGE.dir/ddf/main.cc.o
[ 7%] Building CXX object CMakeFiles/3DGE.dir/ddf/playlist.cc.o
[ 8%] Building CXX object CMakeFiles/3DGE.dir/ddf/sector.cc.o
[ 8%] Building CXX object CMakeFiles/3DGE.dir/ddf/sfx.cc.o
[ 8%] Building CXX object CMakeFiles/3DGE.dir/ddf/states.cc.o
[ 9%] Building CXX object CMakeFiles/3DGE.dir/ddf/style.cc.o
[ 9%] Building CXX object CMakeFiles/3DGE.dir/ddf/switch.cc.o
[ 10%] Building CXX object CMakeFiles/3DGE.dir/ddf/thing.cc.o
[ 10%] Building CXX object CMakeFiles/3DGE.dir/ddf/weapon.cc.o
[ 11%] Building CXX object CMakeFiles/3DGE.dir/deh_edge/ammo.cc.o
[ 11%] Building CXX object CMakeFiles/3DGE.dir/deh_edge/attacks.cc.o
[ 12%] Building CXX object CMakeFiles/3DGE.dir/deh_edge/buffer.cc.o
[ 12%] Building CXX object CMakeFiles/3DGE.dir/deh_edge/convert.cc.o
[ 12%] Building CXX object CMakeFiles/3DGE.dir/deh_edge/frames.cc.o
[ 13%] Building CXX object CMakeFiles/3DGE.dir/deh_edge/info.cc.o
[ 13%] Building CXX object CMakeFiles/3DGE.dir/deh_edge/main.cc.o
[ 14%] Building CXX object CMakeFiles/3DGE.dir/deh_edge/system.cc.o
[ 14%] Building CXX object CMakeFiles/3DGE.dir/deh_edge/util.cc.o
[ 15%] Building CXX object CMakeFiles/3DGE.dir/deh_edge/wad.cc.o
[ 15%] Building CXX object CMakeFiles/3DGE.dir/deh_edge/mobj.cc.o
[ 16%] Building CXX object CMakeFiles/3DGE.dir/deh_edge/sounds.cc.o
[ 16%] Building CXX object CMakeFiles/3DGE.dir/deh_edge/things.cc.o
[ 16%] Building CXX object CMakeFiles/3DGE.dir/deh_edge/weapons.cc.o
[ 17%] Building CXX object CMakeFiles/3DGE.dir/deh_edge/misc.cc.o
[ 17%] Building CXX object CMakeFiles/3DGE.dir/deh_edge/text.cc.o
[ 18%] Building CXX object CMakeFiles/3DGE.dir/deh_edge/storage.cc.o
[ 18%] Building CXX object CMakeFiles/3DGE.dir/deh_edge/patch.cc.o
[ 19%] Building CXX object CMakeFiles/3DGE.dir/deh_edge/rscript.cc.o
[ 19%] Building CXX object CMakeFiles/3DGE.dir/src/system/i_main.cc.o
[ 20%] Building CXX object CMakeFiles/3DGE.dir/src/system/i_ctrl.cc.o
[ 20%] Building CXX object CMakeFiles/3DGE.dir/src/system/i_video.cc.o
/tmp/hyper3DGE/src/system/i_video.cc: In function ‘void I_FinishFrame()’:
/tmp/hyper3DGE/src/system/i_video.cc:358:3: error: ‘wglSwapIntervalEXT’ was not declared in this scope
wglSwapIntervalEXT(-1);
^~~~~~~~~~~~~~~~~~
/tmp/hyper3DGE/src/system/i_video.cc:358:3: note: suggested alternative: ‘r_swapinterval’
wglSwapIntervalEXT(-1);
^~~~~~~~~~~~~~~~~~
r_swapinterval
make[2]: *** [CMakeFiles/3DGE.dir/build.make:1095: CMakeFiles/3DGE.dir/src/system/i_video.cc.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:68: CMakeFiles/3DGE.dir/all] Error 2
make: *** [Makefile:84: all] Error 2
localhost build #

Renderer - only HUD and Sky is rendered

HI,
I compiled Edge yesterday a few times. No mater what I change: the .exe only renders sky(box) and HUD, Menu etc. Everything else is black.

LOG:

Log file created at 05:05 PM on 30/Mar/2020]
[Debug file created at 05:05 PM on 30/Mar/2020]

EDGE (x64) 2.1.0pre-87-gf20e200d0 compiled on Mar 30 2020 at 17:03:35
EDGE homepage is at http://EDGE.sourceforge.net/
EDGE Wiki is at http://3dfxdev.net/edgewiki/
EDGE forums are located at http://tdgmods.net/smf
EDGE problems should be reported via https://github.com/3dfxdev/hyper3DGE/issues
EDGE is based on id Tech by id Software http://www.idsoftware.com/
Executable path: 'D:\Source\EDGE\BUILD64\Release'
Command-line Options:
D:\Source\EDGE\BUILD64\Release\EDGE.exe

E_ShowCPU: Getting CPU information...
CPU Vendor ID: GenuineIntel
Name: Intel(R) Core(TM) i3-4160 CPU @ 3.60GHz
Family 6, Model 60, Stepping 3
Features: SSE2 SSE3 SSSE3 SSE4.1 SSE4.2

M_LoadDefaults from .\EDGE.ini

  • System startup begun.
  • Optimus GPU setting not set.
    I_StartupGraphics: initialisation OK
    Desktop resolution: 1920x1200
    ==============================================================================
    Getting SDL2 Version Information...
    EDGE compiled against SDL version 2.0.10 ...
    But EDGE is linking against SDL version 2.0.10.
    ==============================================================================
    I_StartupControl: 1 joysticks found.
    SDL_Audio_Driver: default
    I_StartupSound: trying 48000 Hz, 32 bit Stereo
    I_StartupSound: Success @ 48000 Hz, 32 bit Stereo
    I_StartupMUS: Couldn't load the midi mixer
    I_StartupMusic: OPL Init OK
    ** FindTimidityConfig:
    tim_player_c: Cannot find Timidity config file!
    I_StartupMusic: Timidity Init FAILED

LocalHostName: Loot
LocalAddress: 192.168.56.1
LocalAddress: 192.168.100.26
I_StartupNetwork: Initialised OK.
Available Resolutions:
1920x1200 @ 24 FS 1920x1080 @ 24 FS 1680x1050 @ 24 FS
1600x1200 @ 24 FS 1600x1024 @ 24 FS 1600x 900 @ 24 FS
1440x 900 @ 24 FS 1360x 768 @ 24 FS 1280x1024 @ 24 FS
1280x 960 @ 24 FS 1280x 800 @ 24 FS 1280x 768 @ 24 FS
1280x 720 @ 24 FS 1152x 864 @ 24 FS 1024x 768 @ 24 FS
800x 600 @ 24 FS 720x 576 @ 24 FS 720x 480 @ 24 FS
640x 480 @ 24 FS 320x 200 @ 24 win 320x 240 @ 24 win
400x 300 @ 24 win 512x 384 @ 24 win 640x 400 @ 24 win
640x 480 @ 24 win 800x 600 @ 24 win 1024x 640 @ 24 win
1024x 768 @ 24 win 1280x 720 @ 24 win 1280x 960 @ 24 win
1440x 900 @ 24 win 1440x1080 @ 24 win 1600x1000 @ 24 win
1600x1200 @ 24 win 1680x1050 @ 24 win 1920x1080 @ 24 win
1920x1200 @ 24 win

  • Changing Resolution...
    R_InitialResolution setting up...
    RGL_ReInit!
    R_SoftInitResolution...
  • returning true.
    OpenGL: Initializing Render Buffers (GLSL)...
    ==============================================================================
    I_SetScreenSize: trying 1440x1080 24bpp (windowed)
    ==============================================================================
    OpenGL Subsystem: Initialising...
    RGL_LoadContextExtensions...
    OpenGL: Collecting Extensions...
    GL_VENDOR: NVIDIA Corporation
    GL_RENDERER: GeForce GTX 1050 Ti/PCIe/SSE2
    GL_VERSION: 3.1.0 NVIDIA 417.01 (Compatibility profile)
    GL_SHADING_LANGUAGE_VERSION: 1.40 NVIDIA via Cg compiler
    OpenGL: Implementation limits:
    -Maximum texture size: 32768
    -Maximum texture units: 32
    -Maximum varying: 124
    -MAximum clip planes: 8
    OpenGL: Initializing Render Buffers (GLSL)...
    ==============================================================================
    R_SoftInitResolution...
  • returning true.
  • System startup done.
  • Initialising DDF
    ==============================================================================
  • IdentifyVersion()...
    Added filename: .\doom.wad
    IWAD BASE = [doom]
    Added filename: .\edge.epk
    Adding .\doom.wad
    md5hash = 9db4b8a0...a279f73b
    Levels 36, Internal GL nodes 0
    FindCacheFilename: local_name = '.\doom.gwa'
    FindCacheFilename: cache_name = '.\cache\doom-9DB4B8-A0D8BC.gwa'
    FindCacheFilename: has_local=NO has_cache=NO
    Actual_GWA_filename: .\cache\doom-9DB4B8-A0D8BC.gwa
    Building GL Nodes for: .\doom.wad
    GB_BuildNodes: STARTED

source: '.\doom.wad'

dest: '.\cache\doom-9DB4B8-A0D8BC.gwa'

...
GLBSP: Total serious warnings: 0
GLBSP: Total minor warnings: 16
GLBSP:
GLBSP: All levels were built successfully.
GB_BuildNodes: SUCCESS
...
Very odd..
lu

Duplicated SSE2NEON headers

There are two identical files in git repository:

  • src/system/vita/SSE2NEON.h
  • src/system/raspberry_pi/SSE2NEON.h

They are indeed duplicated. DLTcollab/sse2neon contains the latest SSE2NEON development with better compatibility and performance tweaks.

Compilation instructions on Linux?

I have tried to compile EDGE on Linux multiple ways, both 2.1.0pre and master, and all of them fail. Master with CMake fails with

Missing variable is:
CMAKE_C_COMPILE_OBJECT
CMake Error: Error required internal CMake variable not set, cmake may not be built correctly.
Missing variable is:
CMAKE_C_COMPILE_OBJECT
CMake Error: Error required internal CMake variable not set, cmake may not be built correctly.
Missing variable is:
CMAKE_C_COMPILE_OBJECT
CMake Error: Error required internal CMake variable not set, cmake may not be built correctly.
Missing variable is:
CMAKE_C_COMPILE_OBJECT
CMake Error: Error required internal CMake variable not set, cmake may not be built correctly.
Missing variable is:
CMAKE_C_COMPILE_OBJECT
CMake Error: Error required internal CMake variable not set, cmake may not be built correctly.
Missing variable is:
CMAKE_C_COMPILE_OBJECT
CMake Error: Error required internal CMake variable not set, cmake may not be built correctly.
Missing variable is:
CMAKE_C_COMPILE_OBJECT
CMake Error: Error required internal CMake variable not set, cmake may not be built correctly.
Missing variable is:
CMAKE_C_COMPILE_OBJECT
CMake Error: Error required internal CMake variable not set, cmake may not be built correctly.
Missing variable is:
CMAKE_C_CREATE_STATIC_LIBRARY
CMake Error: Error required internal CMake variable not set, cmake may not be built correctly.
Missing variable is:
CMAKE_C_COMPILE_OBJECT
CMake Error: Error required internal CMake variable not set, cmake may not be built correctly.
Missing variable is:
CMAKE_C_COMPILE_OBJECT
CMake Error: Error required internal CMake variable not set, cmake may not be built correctly.
Missing variable is:
CMAKE_C_COMPILE_OBJECT
CMake Error: Error required internal CMake variable not set, cmake may not be built correctly.
Missing variable is:
CMAKE_C_COMPILE_OBJECT
CMake Error: Error required internal CMake variable not set, cmake may not be built correctly.
Missing variable is:
CMAKE_C_COMPILE_OBJECT
CMake Error: Error required internal CMake variable not set, cmake may not be built correctly.
Missing variable is:
CMAKE_C_COMPILE_OBJECT
CMake Error: Error required internal CMake variable not set, cmake may not be built correctly.
Missing variable is:
CMAKE_C_COMPILE_OBJECT
CMake Error: Error required internal CMake variable not set, cmake may not be built correctly.
Missing variable is:
CMAKE_C_COMPILE_OBJECT
CMake Error: Error required internal CMake variable not set, cmake may not be built correctly.
Missing variable is:
CMAKE_C_COMPILE_OBJECT
CMake Error: Error required internal CMake variable not set, cmake may not be built correctly.
Missing variable is:
CMAKE_C_COMPILE_OBJECT
CMake Error: Error required internal CMake variable not set, cmake may not be built correctly.
Missing variable is:
CMAKE_C_COMPILE_OBJECT
CMake Error: Error required internal CMake variable not set, cmake may not be built correctly.
Missing variable is:
CMAKE_C_COMPILE_OBJECT
CMake Error: Error required internal CMake variable not set, cmake may not be built correctly.
Missing variable is:
CMAKE_C_COMPILE_OBJECT
CMake Error: Error required internal CMake variable not set, cmake may not be built correctly.
Missing variable is:
CMAKE_C_COMPILE_OBJECT
CMake Error: Error required internal CMake variable not set, cmake may not be built correctly.
Missing variable is:
CMAKE_C_COMPILE_OBJECT
CMake Error: Error required internal CMake variable not set, cmake may not be built correctly.
Missing variable is:
CMAKE_C_COMPILE_OBJECT
CMake Error: Error required internal CMake variable not set, cmake may not be built correctly.
Missing variable is:
CMAKE_C_COMPILE_OBJECT
CMake Error: Error required internal CMake variable not set, cmake may not be built correctly.
Missing variable is:
CMAKE_C_COMPILE_OBJECT
CMake Error: Error required internal CMake variable not set, cmake may not be built correctly.
Missing variable is:
CMAKE_C_CREATE_STATIC_LIBRARY
CMake Error: Error required internal CMake variable not set, cmake may not be built correctly.
Missing variable is:
CMAKE_C_COMPILE_OBJECT
CMake Error: Error required internal CMake variable not set, cmake may not be built correctly.
Missing variable is:
CMAKE_C_LINK_EXECUTABLE
CMake Error: Error required internal CMake variable not set, cmake may not be built correctly.
Missing variable is:
CMAKE_C_COMPILE_OBJECT
CMake Error: Error required internal CMake variable not set, cmake may not be built correctly.
Missing variable is:
CMAKE_C_LINK_EXECUTABLE
-- Generating done
CMake Generate step failed. Build files cannot be regenerated correctly.
gmake: *** [Makefile:6954: cmake_check_build_system] Error 1

trying to compile with the Makefile on both master and 2.1.0pre results in make: *** No rule to make target 'obj_linux/edge/i_main.o', needed by 'edge.static'. Stop.

Doom, sector light to darkest linetypes

(Windows 8.1 64-bit, EDGE-x86-2.1.0pre-43-gcf829c9a8)

The Doom lineaction types
194: SR Change sector light level to darkest next sector
173: S1 - " -
157: WR - " -
104: W1 - " -

In Edge they do not not set the tagged sector's light level to match the current darkest neghboring sector but they always set the light level to pitch black instead. I can't visually determine the light value more precisely than that it goes in between 0-23.

Test wad (Doom2 MAP01): lights-to-darkest.zip

screen shake change not saved in cfg file?

(EDGE-2.1.0-Test3-Win32 / Windows 8.1 64 bit)

The screen_shake option is in EDGE2.cfg but changing the new value from the menu does not get saved in the cfg file? Options > Screen options > Screen shake

It's ON by default. After launching Edge I can turn it OFF, but when I exit and run Edge again it's ON again. If I edit the cfg in notepad and change screen_shake to "0" it's OFF by default and changing it from the menu is not saved to the cfg either.

bullet casing objects in various mods slide on ground forever

I've noticed this in the Immoral Conduct 2 mod and the 3dge64 mod now. Both require the -v135 switch to run, so I'm not sure if its an issue because these mods are still using older DDF things, or if there is a legitimate issue somewhere in the engine or stock ddf files.

Basically as the title says, bullet casings just seem to drift around the floor forever, bouncing off a wall and continuing in opposite direction.

the new -v135 switch

This is more of a suggestion than a problem, but rather than having the engine bomb out telling the user to run it again with the -v135 compatibility option, why not just automatically detect that condition and enable v135 without user intervention?

compiler error seen on OpenBSD

wow you are fast, had merged in the pull requests before i could finish writing the below comment on the pull request :-D there was one patch i did not share:

mmkay, in ddf/main.c:

--- a/ddf/main.cc
+++ b/ddf/main.cc
@@ -195,7 +195,7 @@ public:
        define_c() : name(NULL), value(NULL)
        { }

-       define_c(char *_N, char *_V) : name(_N), value(_V)
+       define_c(char *n_N, char *v_V) : name(n_N), value(v_V)
        { }

        ~define_c()

without this, all compilers I have fail. any ideas? I don't know what I'm doing here :-) The closest clue i think i see is in the clang output, _N being defined by /usr/include/ctype.h on my system..

gcc 4.2.1:

20:10 ryan@iddqd:hyper3DGE$ gmake -f Makefiles/Makefile.bsd
mkdir -p obj_bsd/coal
mkdir -p obj_bsd/ddf
mkdir -p obj_bsd/deh_edge
mkdir -p obj_bsd/edge
mkdir -p obj_bsd/md5_conv
mkdir -p obj_bsd/md5_conv/kmq2
mkdir -p obj_bsd/epi
mkdir -p obj_bsd/glbsp
mkdir -p obj_bsd/timidity
mkdir -p obj_bsd/opllib
g++ -O2 -ffast-math -fno-strict-aliasing -Wall -pipe -I. -DBSD -DUSE_OGG -I/usr/local/include -I/usr/local/include/SDL2 -I/usr/X11R6/include -D_REENTRANT -I/usr/X11R6/include -I/usr/local/include/libcpuid -o obj_bsd/ddf/main.o -c ddf/main.cc 
ddf/main.cc:198: error: expected ',' or '...' before numeric constant
ddf/main.cc: In constructor 'define_c::define_c(char*)':
ddf/main.cc:198: error: '_V' was not declared in this scope
ddf/main.cc:198: error: invalid conversion from 'int' to 'char*'
ddf/main.cc: In function 'void DDF_MainAddDefine(char*, char*)':
ddf/main.cc:221: error: no matching function for call to 'define_c::define_c(char*&, char*&)'
ddf/main.cc:198: note: candidates are: define_c::define_c(char*)
ddf/main.cc:195: note:                 define_c::define_c()
ddf/main.cc:186: note:                 define_c::define_c(const define_c&)
Makefiles/Makefile.bsd:133: recipe for target 'obj_bsd/ddf/main.o' failed
gmake: *** [obj_bsd/ddf/main.o] Error 1

gcc 4.9.3:

20:10 ryan@iddqd:hyper3DGE$ CXX=eg++ gmake -f Makefiles/Makefile.bsd
mkdir -p obj_bsd/coal
mkdir -p obj_bsd/ddf
mkdir -p obj_bsd/deh_edge
mkdir -p obj_bsd/edge
mkdir -p obj_bsd/md5_conv
mkdir -p obj_bsd/md5_conv/kmq2
mkdir -p obj_bsd/epi
mkdir -p obj_bsd/glbsp
mkdir -p obj_bsd/timidity
mkdir -p obj_bsd/opllib
eg++ -O2 -ffast-math -fno-strict-aliasing -Wall -pipe -I. -DBSD -DUSE_OGG -I/usr/local/include -I/usr/local/include/SDL2 -I/usr/X11R6/include -D_REENTRANT -I/usr/X11R6/include -I/usr/local/include/libcpuid -o obj_bsd/ddf/main.o -c ddf/main.cc 
In file included from ddf/../epi/headers.h:26:0,
                 from ddf/../epi/epi.h:22,
                 from ddf/local.h:22,
                 from ddf/main.cc:19:
ddf/main.cc:198:17: error: expected ',' or '...' before numeric constant
  define_c(char *_N, char *_V) : name(_N), value(_V)
                 ^
ddf/main.cc: In constructor 'define_c::define_c(char*)':
ddf/main.cc:198:49: error: '_V' was not declared in this scope
  define_c(char *_N, char *_V) : name(_N), value(_V)
                                                 ^
ddf/main.cc:198:51: error: invalid conversion from 'int' to 'char*' [-fpermissive]
  define_c(char *_N, char *_V) : name(_N), value(_V)
                                                   ^
ddf/main.cc: In function 'void DDF_MainAddDefine(char*, char*)':
ddf/main.cc:221:40: error: no matching function for call to 'define_c::define_c(char*&, char*&)'
  defines.push_back(define_c(name, value));
                                        ^
ddf/main.cc:221:40: note: candidates are:
ddf/main.cc:198:2: note: define_c::define_c(char*)
  define_c(char *_N, char *_V) : name(_N), value(_V)
  ^
ddf/main.cc:198:2: note:   candidate expects 1 argument, 2 provided
ddf/main.cc:195:2: note: define_c::define_c()
  define_c() : name(NULL), value(NULL)
  ^
ddf/main.cc:195:2: note:   candidate expects 0 arguments, 2 provided
ddf/main.cc:185:7: note: define_c::define_c(const define_c&)
 class define_c
       ^
ddf/main.cc:185:7: note:   candidate expects 1 argument, 2 provided
Makefiles/Makefile.bsd:133: recipe for target 'obj_bsd/ddf/main.o' failed
gmake: *** [obj_bsd/ddf/main.o] Error 1

in clang 3.8.0:

20:10 ryan@iddqd:hyper3DGE$ CXX=clang gmake -f Makefiles/Makefile.bsd
mkdir -p obj_bsd/coal
mkdir -p obj_bsd/ddf
mkdir -p obj_bsd/deh_edge
mkdir -p obj_bsd/edge
mkdir -p obj_bsd/md5_conv
mkdir -p obj_bsd/md5_conv/kmq2
mkdir -p obj_bsd/epi
mkdir -p obj_bsd/glbsp
mkdir -p obj_bsd/timidity
mkdir -p obj_bsd/opllib
clang -O2 -ffast-math -fno-strict-aliasing -Wall -pipe -I. -DBSD -DUSE_OGG -I/usr/local/include -I/usr/local/include/SDL2 -I/usr/X11R6/include -D_REENTRANT -I/usr/X11R6/include -I/usr/local/include/libcpuid -o obj_bsd/ddf/main.o -c ddf/main.cc 
ddf/main.cc:198:17: error: expected ')'
        define_c(char *_N, char *_V) : name(_N), value(_V)
                       ^
/usr/include/ctype.h:47:12: note: expanded from macro '_N'
#define _N      0x04
                ^
ddf/main.cc:198:10: note: to match this '('
        define_c(char *_N, char *_V) : name(_N), value(_V)
                ^
ddf/main.cc:198:33: error: cannot initialize a member subobject of type 'char *' with an rvalue of type 'int'
        define_c(char *_N, char *_V) : name(_N), value(_V)
                                       ^    ~~
ddf/main.cc:198:49: error: use of undeclared identifier '_V'
        define_c(char *_N, char *_V) : name(_N), value(_V)
                                                       ^
ddf/main.cc:221:20: error: no matching constructor for initialization of 'define_c'
        defines.push_back(define_c(name, value));
                          ^        ~~~~~~~~~~~
ddf/main.cc:198:2: note: candidate constructor not viable: requires 1 argument, but 2 were provided
        define_c(char *_N, char *_V) : name(_N), value(_V)
        ^
ddf/main.cc:185:7: note: candidate constructor (the implicit copy constructor) not viable: requires 1 argument, but 2 were provided
class define_c
      ^
ddf/main.cc:195:2: note: candidate constructor not viable: requires 0 arguments, but 2 were provided
        define_c() : name(NULL), value(NULL)
        ^
4 errors generated.
Makefiles/Makefile.bsd:133: recipe for target 'obj_bsd/ddf/main.o' failed
gmake: *** [obj_bsd/ddf/main.o] Error 1

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.