Go Back   EQEmulator Home > EQEmulator Forums > General > General::General Discussion

General::General Discussion General discussion about EverQuest(tm), EQEMu, and related topics.
Do not post support topics here.

Reply
 
Thread Tools Display Modes
  #1  
Old 02-05-2012, 10:06 PM
KLS
Administrator
 
Join Date: Sep 2006
Posts: 1,348
Default

The mirrored zones sounds very similar to an issue I ran into with my .eqg renderer because sony inverts x and y axis.
Reply With Quote
  #2  
Old 02-05-2012, 10:19 PM
pfyon's Avatar
pfyon
Discordant
 
Join Date: Mar 2009
Location: Ottawa
Posts: 495
Default

Thanks again tabasco, that did fix that issue. I also had to change line 96 of S3D.cpp from

Code:
memcpy(&file_count, meta_block, sizeof(long));
to

Code:
memcpy(&file_count, meta_block, sizeof(int32));
Now I'm sitting at a black window from Lantern without any useful output.

Code:
pfyon@family-kubuntu:~/lanterneq/Lantern$ tail log.txt 
<---> Logfile Initialized on 2-5-2012 at 21:16:32
<---> Preferences from lantern.ini have been read.
<---> Loading zone: gfaydark
<---> Screen width: 800 - Screen height: 600
Reply With Quote
  #3  
Old 02-05-2012, 10:30 PM
Tabasco's Avatar
Tabasco
Discordant
 
Join Date: Sep 2009
Posts: 269
Default

With SOIL I haven't had any texture issues, but I haven't tested in 64-bit yet.
What do you get if you try to move around (sometimes 0,0,0 isn't ideal) or what do you get when you run something from mesa-utils like glxgears, or glxinfo, or try to load a different s3d?

KLS, I noticed some strange stuff when translating 2d map files to locs inside a web-based editor. OpenGL tends to use a Y-Up model, but every engine wants to apply its own translation anyway. In addition to that, they use one system for coords and another entirely for labels. I can only imagine what other idiosyncrasies we'll find inside their archives.
Reply With Quote
  #4  
Old 02-06-2012, 12:02 AM
lerxst2112
Demi-God
 
Join Date: Aug 2010
Posts: 1,742
Default

It may not help that by default Direct3D is left-handed and OpenGL is right-handed with regards to coordinate systems. Not hard to account for if you know the format the data is loaded in and the destination system you want it to fit, but certainly a common pitfall.
Reply With Quote
  #5  
Old 02-06-2012, 04:04 PM
Taurinus2
Sarnak
 
Join Date: Nov 2009
Posts: 45
Default

Any thoughts toward a sound lib? FMOD? irrKlang?

What threading model do you plan to adhere to?

Also do you have a design doc laying around?

I applaud your drive and progress on this project.
Reply With Quote
  #6  
Old 02-06-2012, 05:15 PM
PixelEngineer
Sarnak
 
Join Date: May 2011
Posts: 96
Default

Quote:
Originally Posted by Taurinus2 View Post
Any thoughts toward a sound lib? FMOD? irrKlang?

What threading model do you plan to adhere to?

Also do you have a design doc laying around?

I applaud your drive and progress on this project.
I think when the time comes, I will try FMOD. Looks like what a lot of people use today in the industry.

As for threading, I honestly have no idea yet. There is a design doc (readme.txt) on the SVN and it just lays out some goals I want to accomplish.

I probably won't be committing anything for a week or so while I add support for shaders and lighting. More than anything I am just reading about the OpenGL pipeline and trying to understand everything before I move on. After all, this is a project for learning.

Great to see it running on Linux and go ahead and commit that whenever you get the chance.

Cheers!
Reply With Quote
  #7  
Old 02-07-2012, 11:01 AM
Tabasco's Avatar
Tabasco
Discordant
 
Join Date: Sep 2009
Posts: 269
Default

This is indeed the case, and as you said, pretty easy to fix.

Quote:
Originally Posted by lerxst2112 View Post
It may not help that by default Direct3D is left-handed and OpenGL is right-handed with regards to coordinate systems. Not hard to account for if you know the format the data is loaded in and the destination system you want it to fit, but certainly a common pitfall.
The resolution should now load from the ini file and you can change camera speed with +/- now as well.
Reply With Quote
  #8  
Old 02-07-2012, 06:44 PM
PixelEngineer
Sarnak
 
Join Date: May 2011
Posts: 96
Default

As for the flipped textures, there is a flag in the WLD header that denotes if the zone is old or new. I assumed that would allow us to flip or not flip the texture across the y axis. Unfortunately, the classic and the titanium Greater Faydark both say they are old zones so it won't be that simple. My next idea is just to check the bit depth on the textures when they load. If the depth is 8 bit, we know it's a classic zone and 24 bits, a newer version zone. Again as I mentioned, I will be learning shaders for the next week or so and then I am going to tackle both per vertex and per pixel lighting in GLSL.

Awesome work Tabasco.

Cheers!
Reply With Quote
  #9  
Old 02-06-2012, 05:56 PM
Tabasco's Avatar
Tabasco
Discordant
 
Join Date: Sep 2009
Posts: 269
Default

Revision 29 should build and function on linux 32 and 64 bit.
Reply With Quote
  #10  
Old 02-06-2012, 06:14 PM
PixelEngineer
Sarnak
 
Join Date: May 2011
Posts: 96
Default

Quote:
Originally Posted by Tabasco View Post
Revision 29 should build and function on linux 32 and 64 bit.
Fantastic. Thank you Tabasco. Also, for those who don't know, Tabasco is now a contributor to the project.
Reply With Quote
  #11  
Old 02-06-2012, 10:10 PM
pfyon's Avatar
pfyon
Discordant
 
Join Date: Mar 2009
Location: Ottawa
Posts: 495
Default

Excellent, works out of the box. Performance shot up once I installed the nvidia proprietary driver too .
Reply With Quote
  #12  
Old 02-07-2012, 12:44 AM
Vexyl
Hill Giant
 
Join Date: Oct 2009
Location: U.S.A.
Posts: 197
Default Results

Revision 29 compiles/runs with no errors on Fedora 13.

Code:
[user@host ~]$ uname -a
Linux host 2.6.34.9-69.fc13.i686.PAE #1 SMP Tue May 3 09:13:56 UTC 2011 i686 i686 i386 GNU/Linux
`g++ --version`
Code:
g++ (GCC) 4.4.5 20101112 (Red Hat 4.4.5-2)
...
`make --version`
Code:
GNU Make 3.81
...

I did take a few screenshots while I was testing it, but didn't want to put all 5 in one post so here are the links:

Unrest: http://i.imgur.com/6wgCs.jpg

Mistmoore 1 (Overview): http://i.imgur.com/EH4QD.jpg

Mistmoore 2: http://i.imgur.com/eUgH5.jpg

Highkeep 1 (Front entrance): http://i.imgur.com/UGJ7o.jpg

Highkeep 2: http://i.imgur.com/V6XJB.jpg

That last one is interesting because the establishment plaque is upside down, and the left and right textures adjacent to the plaque are blurry.

Edit: Going to put up some neriak screenshots just for fun.
Reply With Quote
  #13  
Old 02-07-2012, 09:29 AM
pfyon's Avatar
pfyon
Discordant
 
Join Date: Mar 2009
Location: Ottawa
Posts: 495
Default

I also noticed in gfay that all the trees' leaves were upside down.
Reply With Quote
  #14  
Old 02-13-2012, 08:36 PM
PixelEngineer
Sarnak
 
Join Date: May 2011
Posts: 96
Default

As I continue to progress through my study of shaders, I had a fun idea last night. For me, seeing Lantern grow and accumulate a number of DLL's in the directory has been a little depressing. I downloaded a Game Boy Advance emulator yesterday and it had only 1 file; the executable.

I am going to try as I progress to actively reduce the amounts of external dependencies and DLL's so that quite possibly Lantern can simply be an executable. It could as a first run, create the .ini.

Thoughts?
Reply With Quote
  #15  
Old 02-13-2012, 09:09 PM
Taurinus2
Sarnak
 
Join Date: Nov 2009
Posts: 45
Default

My thoughts:

In order to achieve this on Windows, you would need:

1) Static linkage
1a) Source for every lib you use to achieve this.

Sure, lib developers/vendors make pre-built libs available, but depending on them means that the show is over once development ends (or you move on to another environment that they do not support) and no source is supplied. You also have to keep crt linkage in mind (cannot mix them).

Even being feasible it is simply not worth the effort IMO.

Secondly, why?

Your data dependencies number in the thousands already so it would seem pointless to me.
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

   

All times are GMT -4. The time now is 03:38 AM.


 

Everquest is a registered trademark of Daybreak Game Company LLC.
EQEmulator is not associated or affiliated in any way with Daybreak Game Company LLC.
Except where otherwise noted, this site is licensed under a Creative Commons License.
       
Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3