Reaper Grimm
Register | User Profile | Member List | F.A.Q | Privacy Policy | New Blog | Search Forums | Forums Home
Doomworld Forums : Powered by vBulletin version 2.2.5 Doomworld Forums > Special Interest > Eternity > Eternity Engine v3.40.00 "Rebirth"
 
Author
All times are GMT. The time now is 17:05. Post New Thread    Post A Reply
Quasar
Moderator


Posts: 5965
Registered: 08-00


Get the new 10th anniversary release of the Eternity Engine here!



Please note the following:
This is the first version of Eternity to be released based on the C++-converted codebase!

There are some minor problems with this release of which you might wish to be aware:

  • Portal overlays are *not* quite working fully. We hope to rectify this ASAP.
  • There is no Win9x compatibility in the current release, due to Visual C++ 6.0 throwing a motherloving fit. We would like to release one soon but may have to use a different compiler to produce it.


The first public release of the Eternity Engine, v3.29 Public Beta 1, was released 1/8/2001. Today was Eternity's 10th birthday, and a fitting time to release this newest version of the engine. Thank you all for helping to make Eternity a reality.

Last edited by Quasar on 01-09-11 at 06:04

Old Post 01-09-11 05:53 #
Quasar is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Csonicgo


Posts: 4430
Registered: 03-04


<3 <3 <3 <3 <3 <3

Old Post 01-09-11 05:56 #
Csonicgo is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
esselfortium
A Major Doomworld Concern


Posts: 6489
Registered: 01-02


Awesome! Extradata sectors for custom damage/colormap/flat alignment/etc, Extradata translucent/additive lines, and other cool stuff. Oh, right, and C++! Yay :D

Old Post 01-09-11 06:11 #
esselfortium is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
printz
CRAZY DUMB ZEALOT


Posts: 8780
Registered: 06-06


Portal overlays? How do I use them?

Old Post 01-09-11 07:26 #
printz is offline Profile || Blog || PM || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Graf Zahl
Why don't I have a custom title by now?!


Posts: 7698
Registered: 01-03



Quasar said:

[*] There is no Win9x compatibility in the current release, due to Visual C++ 6.0 throwing a motherloving fit. We would like to release one soon but may have to use a different compiler to produce it.




That old piece of garbage doesn't compile your code anymore? Its C++ support truly isn't the best. I can remember that it had major issues with some constructs ZDoom uses.

What other compilers do you have? If you got VC 2005 there's a small assembly hack you can take from ZDoom. For later compilers I don't think it's possible to let them output Win9x compatible binaries.

Old Post 01-09-11 07:57 #
Graf Zahl is offline Profile || Blog || PM || Email || Search || Add Buddy IP || Edit/Delete || Quote
Quasar
Moderator


Posts: 5965
Registered: 08-00



Graf Zahl said:



That old piece of garbage doesn't compile your code anymore? Its C++ support truly isn't the best. I can remember that it had major issues with some constructs ZDoom uses.

What other compilers do you have? If you got VC 2005 there's a small assembly hack you can take from ZDoom. For later compilers I don't think it's possible to let them output Win9x compatible binaries.


The first problem is that it has different overload resolution rules which don't recognize types as being equivalent in the same way. This is a damned-if-you-do, damned-if-you-don't problem, since other compilers will see the methods as ambiguous overloads.

The other problem is one I cannot understand at ALL. It is complaining about constructs such as:
code:
static default_t defaults[] = { { fields, in, here }, ... };

The error given makes it seem that the compiler believes defaults is not in fact an array, but one gigantic default_t. For every initial field in the static initializers, it complains "No conversion from <whatever the first field is> to default_t" - absolute nonsense.

I can try to acquire 2005, although your mentioning hacks as being necessary is not encouraging >_>

Old Post 01-09-11 08:20 #
Quasar is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Quasar
Moderator


Posts: 5965
Registered: 08-00



printz said:
Portal overlays? How do I use them?

Via ExtraData flag fields, but I'd seriously hold off on it for the moment, as they have some kind of serious glitch that SoM hasn't been able to figure out yet.

Once they're working, I will add their documentation to the ExtraData page on the wiki...

Old Post 01-09-11 08:22 #
Quasar is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Graf Zahl
Why don't I have a custom title by now?!


Posts: 7698
Registered: 01-03



Quasar said:


The error given makes it seem that the compiler believes defaults is not in fact an array, but one gigantic default_t. For every initial field in the static initializers, it complains "No conversion from <whatever the first field is> to default_t" - absolute nonsense.



I think ZDoom ran into the same problem as this one. It's clearly a compiler bug and obviously was fixed in MS's next compiler release.



Quasar said:

I can try to acquire 2005, although your mentioning hacks as being necessary is not encouraging >_>



It's not that bad. All the code needs to do is to override one imported function that doesn't exist in Windows95 but is references by the CRT.

All ZDoom does is adding this .asm file:

code:
; The Visual C++ CRT unconditionally links to IsDebuggerPresent. ; This function is not available under Windows 95, so here is a ; lowlevel replacement for it. extern __imp__GetModuleHandleA@4 extern __imp__GetProcAddress@8 SECTION .data global __imp__IsDebuggerPresent@0 __imp__IsDebuggerPresent@0: dd IsDebuggerPresent_Check SECTION .rdata StrKERNEL32: db "KERNEL32",0 StrIsDebuggerPresent: db "IsDebuggerPresent",0 SECTION .text IsDebuggerPresent_No: xor eax,eax ret IsDebuggerPresent_Check: push StrKERNEL32 call [__imp__GetModuleHandleA@4] push StrIsDebuggerPresent push eax call [__imp__GetProcAddress@8] test eax,eax jne near .itis mov eax,IsDebuggerPresent_No .itis: mov [__imp__IsDebuggerPresent@0],eax jmp eax

Old Post 01-09-11 08:32 #
Graf Zahl is offline Profile || Blog || PM || Email || Search || Add Buddy IP || Edit/Delete || Quote
Doom_user
Member


Posts: 269
Registered: 06-05


I get this error message when I try to start Eternity 3.40.00.


This application has failed to start because the application configuration is incorrect. Reinstalling the application may fix this problem.


My operating system is fully updated 32-bit Windows XP Professional with Service Pack 3.

Old Post 01-09-11 08:38 #
Doom_user is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Csonicgo


Posts: 4430
Registered: 03-04


And here is the first video of Rebirth.... DEATH BFG 2.0 RAAAAGH!

Last edited by Csonicgo on 01-09-11 at 09:08

Old Post 01-09-11 08:52 #
Csonicgo is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
printz
CRAZY DUMB ZEALOT


Posts: 8780
Registered: 06-06



Quasar said:

Via ExtraData flag fields, but I'd seriously hold off on it for the moment, as they have some kind of serious glitch that SoM hasn't been able to figure out yet.

Once they're working, I will add their documentation to the ExtraData page on the wiki...

Yay. I'm curious how a portal overlay looks.

Old Post 01-09-11 09:35 #
printz is offline Profile || Blog || PM || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
esselfortium
A Major Doomworld Concern


Posts: 6489
Registered: 01-02



printz said:
Yay. I'm curious how a portal overlay looks.

Like a translucent line, but on the floor. :P

Old Post 01-09-11 09:54 #
esselfortium is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
RjY
anARCHy


Posts: 943
Registered: 05-02


Quasar: congratulations on your successful language transition. As I said I'm not entirely convinced it wasn't an overreaction, but I seem to recall you said you wanted to do some stuff with C++ features anyway, so I guess it's all good.

I'm interested to know what SoM thinks of all this as I don't think I've seen him express an opinion on choice of language.

Personally I need to find some kind of C++ for C programmers guide because I have only the vaguest idea of what C++ gives you over C...

Old Post 01-09-11 10:07 #
RjY is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Quasar
Moderator


Posts: 5965
Registered: 08-00



RjY said:
Quasar: congratulations on your successful language transition. As I said I'm not entirely convinced it wasn't an overreaction, but I seem to recall you said you wanted to do some stuff with C++ features anyway, so I guess it's all good.

I'm interested to know what SoM thinks of all this as I don't think I've seen him express an opinion on choice of language.

Personally I need to find some kind of C++ for C programmers guide because I have only the vaguest idea of what C++ gives you over C...


The problem wasn't that C99 limitations couldn't be worked around in the short term, but that working around them in the long term while continuing to develop designs that ran counter to them would probably not be sustainable. And besides that, it was clouding what would otherwise have been elegant implementations with low-level pointer juggling and type casts.

C++ offers two main things: classes with polymorphic inheritance, and templates for generic programming.

Classes are just an extension of C's structs, which add the ability to have access control (public/protected/private), inheritance, encapsulation of methods (functions) with the data on which they act (along with a "this" pointer to use inside them that implicitly references the current object), constructors and destructors for (de)initialization, and most importantly, the "virtual" function call mechanism - meaning the method called is selected based on the most-derived type of an object, at runtime, and not the type of the pointer or reference it was called through.

Templates allow a piece of code (a class or function) to be defined in a type-agnostic manner. For example:
code:
template<typename T> T addTwo(T &a, T &b) { return a + b; }

You can call that template function on any two objects which implement an operator + that returns T or T &. And that includes fundamental types like int or double. (unary & represents a reference, btw, which is just an opaque pointer which isn't allowed to ever be NULL).

Old Post 01-09-11 10:22 #
Quasar is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Archi
Member


Posts: 262
Registered: 07-09


Great. One of my favourite doom ports.

Old Post 01-09-11 10:26 #
Archi is online now Profile || Blog || PM || Search || Add Buddy IP || Edit/Delete || Quote
printz
CRAZY DUMB ZEALOT


Posts: 8780
Registered: 06-06



esselfortium said:

Like a translucent line, but on the floor. :P

Could make for some badass gateways to the netherworld (literally).

Old Post 01-09-11 10:48 #
printz is offline Profile || Blog || PM || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Graf Zahl
Why don't I have a custom title by now?!


Posts: 7698
Registered: 01-03



esselfortium said:

Like a translucent line, but on the floor. :P




So it's just drawing a translucent flat on a portal plane?

Old Post 01-09-11 10:55 #
Graf Zahl is offline Profile || Blog || PM || Email || Search || Add Buddy IP || Edit/Delete || Quote
Xaser
Forum Staple


Posts: 2578
Registered: 07-03


Great timing here -- No need to link all the Hacx guys to an SVN version now. :P

I brought this up in IRC, but I may as well post it since it's relevant-ish: I've got an example wad that shows off a few compatible features between ZDoom and Eternity, the new ExtraData-based translucency (additive as well ;) being one of them. It's currently using Hacx 2.0 textures, but Doomifying it would be easy enough. Anyone here interested in it?

Old Post 01-09-11 11:42 #
Xaser is offline Profile || Blog || PM || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
printz
CRAZY DUMB ZEALOT


Posts: 8780
Registered: 06-06


Dumb question: What about transitioning to C# now? :)

Old Post 01-09-11 12:59 #
printz is offline Profile || Blog || PM || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Graf Zahl
Why don't I have a custom title by now?!


Posts: 7698
Registered: 01-03


Why? C# can't even be compiled into native machine code.

Old Post 01-09-11 13:37 #
Graf Zahl is offline Profile || Blog || PM || Email || Search || Add Buddy IP || Edit/Delete || Quote
Gez
Why don't I have a custom title by now?!


Posts: 11000
Registered: 07-07



Doom_user said:
I get this error message when I try to start Eternity 3.40.00.



My operating system is fully updated 32-bit Windows XP Professional with Service Pack 3.



I've done a search and replace of .c by .cpp in my project file and EE compiled successfully and seems to work fine, so I uploaded r1412 to the DRD Team SVN site. It might work better for you because it's compiled with MSVC++ 2005.

Old Post 01-09-11 15:43 #
Gez is online now Profile || Blog || PM || Search || Add Buddy IP || Edit/Delete || Quote
Doom_user
Member


Posts: 269
Registered: 06-05



Gez said:


I've done a search and replace of .c by .cpp in my project file and EE compiled successfully and seems to work fine, so I uploaded r1412 to the DRD Team SVN site. It might work better for you because it's compiled with MSVC++ 2005.



Thanks. r1412 works perfectly.

Old Post 01-09-11 17:11 #
Doom_user is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Quasar
Moderator


Posts: 5965
Registered: 08-00



Graf Zahl said:



So it's just drawing a translucent flat on a portal plane?


Yeah "just" like it's no kind of highly requested, advanced feature or anything...

Old Post 01-09-11 18:35 #
Quasar is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Graf Zahl
Why don't I have a custom title by now?!


Posts: 7698
Registered: 01-03


The name sounded like it's more... :P

Old Post 01-09-11 18:42 #
Graf Zahl is offline Profile || Blog || PM || Email || Search || Add Buddy IP || Edit/Delete || Quote
esselfortium
A Major Doomworld Concern


Posts: 6489
Registered: 01-02



Graf Zahl said:
The name sounded like it's more... :P

It gives automated blowjobs too.

Old Post 01-09-11 19:03 #
esselfortium is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
ducon
Régulier du Forum


Posts: 1317
Registered: 12-03


I’m trying to compile EE, ./autogen.sh does not complain, but make does:

code:
> LANG="C";make Making all in source make[1]: Entering directory `/somewhere/eternity/ee3.40.00-src/source' Making all in Confuse make[2]: Entering directory `/somewhere/eternity/ee3.40.00-src/source/Confuse' make[2]: *** No rule to make target `confuse.o', needed by `libetconfuse.a'. Stop. make[2]: Leaving directory `/somewhere/eternity/ee3.40.00-src/source/Confuse' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/somewhere/eternity/ee3.40.00-src/source' make: *** [all-recursive] Error 1


Did I forget something?

__________________
A shell, an imp.

Old Post 01-09-11 20:47 #
ducon is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Csonicgo


Posts: 4430
Registered: 03-04



ducon said:
I’m trying to compile EE, ./autogen.sh does not complain, but make does:

code:
> LANG="C";make Making all in source make[1]: Entering directory `/somewhere/eternity/ee3.40.00-src/source' Making all in Confuse make[2]: Entering directory `/somewhere/eternity/ee3.40.00-src/source/Confuse' make[2]: *** No rule to make target `confuse.o', needed by `libetconfuse.a'. Stop. make[2]: Leaving directory `/somewhere/eternity/ee3.40.00-src/source/Confuse' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/somewhere/eternity/ee3.40.00-src/source' make: *** [all-recursive] Error 1


Did I forget something?



We're using cmake now. it's a lot easier. Mayyybe I should have put that in the news.

Last edited by Csonicgo on 01-09-11 at 23:36

Old Post 01-09-11 23:27 #
Csonicgo is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
Quasar
Moderator


Posts: 5965
Registered: 08-00



Csonicgo said:

We're using cmake now. it's a lot easier. Mayyybe I should have put that in the news.


Oh yeah. I knew I forgot to fix something before release... Basically the automake system hasn't been updated yet. My bad ;)

Old Post 01-10-11 01:42 #
Quasar is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
ducon
Régulier du Forum


Posts: 1317
Registered: 12-03


So, I may wait for the next release?
And please change the README too, some old fashioned guys still read this stuff. ;)

__________________
A shell, an imp.

Old Post 01-10-11 19:55 #
ducon is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
RjY
anARCHy


Posts: 943
Registered: 05-02


Just noticed this. CMakeLists needs a version number bump
code:
Index: CMakeLists.txt =================================================================== --- CMakeLists.txt (revision 1418) +++ CMakeLists.txt (working copy) @@ -48,7 +48,7 @@ SET (CPACK_PACKAGE_VENDOR "Team Eternity") SET (CPACK_PACKAGE_CONTACT "Team Eternity <haelyjd@hotmail.com>") SET (CPACK_PACKAGE_VERSION_MAJOR "3") -SET (CPACK_PACKAGE_VERSION_MINOR "37") +SET (CPACK_PACKAGE_VERSION_MINOR "40") SET (CPACK_PACKAGE_VERSION_PATCH "00") SET (CPACK_PACKAGE_NAME "Eternity Engine") SET (CPACK_RESOURCE_FILE_LICENSE "${CMAKE_SOURCE_DIR}/COPYING")

Old Post 01-12-11 12:49 #
RjY is offline Profile || Blog || PM || Email || Homepage || Search || Add Buddy IP || Edit/Delete || Quote
All times are GMT. The time now is 17:05. Post New Thread    Post A Reply
 
Doomworld Forums : Powered by vBulletin version 2.2.5 Doomworld Forums > Special Interest > Eternity > Eternity Engine v3.40.00 "Rebirth"

Show Printable Version | Email this Page | Subscribe to this Thread

 

Forum Rules:
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is OFF
vB code is ON
Smilies are OFF
[IMG] code is ON
 

< Contact Us - Doomworld >

Powered by: vBulletin Version 2.2.5
Copyright ©2000, 2001, Jelsoft Enterprises Limited.