Zum Inhalt wechseln

Foto

Toolset lightmapper project


113 Antworten in diesem Thema

#51
akaliel

akaliel
  • Members
  • 75 Beiträge
Quick question James, now that we're getting sunlight, i noticed that there's no shadows from the trees. Do trees generate shadows, or is it only from landscape?

#52
oni_step

oni_step
  • Members
  • 8 Beiträge

dorotea wrote...

"That should get rid of the errors regarding engine.dll registration. See what happens after that."

I know how to register a dll manually. My problem is that when I try to do it -- ie try to run

regsvr32 "%root%\\\\\\\\Dragon Age\\\\\\\\tools\\\\\\\\Engine.dll" from either command prompt or Start -> Run I get absolutely nothing - ie no confirmation message and no error message either. Just 30 sec or so of hourglass cursor. When I try to run

regsvr32 \\\\\\\\u "%root%:\\\\\\\\Dragon Age\\\\\\\\tools\\\\\\\\Engine.dll" 

 - to unregister  - I get :

LoadLibrary ("\\\\\\\\u") failed  - The specified module could not be found

 My install is at E: \\\\\\\\ drive btw so my location is at "E:\\\\\\\\Dragon Age\\\\\\\\tools\\\\\\\\Engine.dll" -- should I try to reinstall the game into C:\\\\\\\\Program Files? Maybe it is my Engine.dll that is corrupted? I reinstalled toolset 3 times and I always end up with the same problem - not being able to register the Engine.dll either during the install or manually.

When I try to have a look at Engine.dll in my install with Dependency Walker I get :

IESHIMS.DLL -- the system cannot find the file specified.
MSS32.DLL -- the system cannot find the file specified.
PHYSXLOADER.DLL -- the system cannot find the file specified.
WER.DLL -- the system cannot find the file specified.

Error: At least one required implicit or forwarded dependency was not found.
Error: At least one module has an unresolved import due to a missing export function in an implicitly dependent module.
Error: Modules with different CPU types were found.
Warning: At least one delay-load dependency module was not found.






I had the same problem. The only way I was able to register the dll was to start up in safe mode and log in as administrator. Doing that, I was able to register it. I am using vista by the way.

#53
dorotea

dorotea
  • Members
  • 19 Beiträge
grr - oni -- thanks for the advice! I was finally able to register Engine.dll from the safe mode - maybe this bit should be added to the wiki. But now I cannot even get the lightmapper to submit lightmaps for rendering anymore - all I get is continuous :

 Failed to find lightmap-atlas info for model 'fhi_wallbasic_0', part '_1k5' type errors .

And no, they don't go away after first, or second, or third, or fourth, etc attempt to render a ligtmap for a simple tiny room with 3 walls, a barrel and two lights. Will try to roll back to lightmapper  1.0 tomorrow and use the safety mode trick to reg the Engine.dll. As Alice used to say - this is getting curiouser and curiouser. ( All of the above is happening on Win xp 64 bit system)

Bearbeitet von dorotea, 26 November 2009 - 07:34 .


#54
Kusako

Kusako
  • Members
  • 8 Beiträge

akaliel wrote...

Quick question James, now that we're getting sunlight, i noticed that there's no shadows from the trees. Do trees generate shadows, or is it only from landscape?

Did you find out anything about shadow casting and sunlight? I don't seem to get shadows for any level geometry when i only use sunlight. Ambient Occlusion works however (even on trees). For now I'm not sure what a basic light setup for an exterior level should be, and the WIKI doesn't mention sunlight on the page about lighting.

#55
James Goldman

James Goldman
  • BioWare Employees
  • 25 Beiträge
akaliel: No, trees do not cast shadows in sunlight in DA, so that's as expected.

dorotea: Those messages can be ignored. I have suppressed them for the next release of the toolset.

oni_step: I have heard that regsvr32 hanging is a general problem with the installer with some versions of XP. My understanding was that the library does actually get registered, but regsrv just hangs in memory until reboot. Interesting about the safe mode, I'll have to let them know. It's a clue at any rate.

#56
James Goldman

James Goldman
  • BioWare Employees
  • 25 Beiträge
One more thing: I don't recommend that you roll back to the older version of eclipseray. It uses the same engine.dll to read in the geometry so it likely won't fix anything, but you'll get back the cracking and sunlight bugs.

#57
Allan Smith

Allan Smith
  • BioWare Employees
  • 83 Beiträge

dorotea wrote...

grr - oni -- thanks for the advice! I was finally able to register Engine.dll from the safe mode - maybe this bit should be added to the wiki. But now I cannot even get the lightmapper to submit lightmaps for rendering anymore - all I get is continuous :

 Failed to find lightmap-atlas info for model 'fhi_wallbasic_0', part '_1k5' type errors .

And no, they don't go away after first, or second, or third, or fourth, etc attempt to render a ligtmap for a simple tiny room with 3 walls, a barrel and two lights. Will try to roll back to lightmapper  1.0 tomorrow and use the safety mode trick to reg the Engine.dll. As Alice used to say - this is getting curiouser and curiouser. ( All of the above is happening on Win xp 64 bit system)


I will put this info on the wiki.  As for your other errors, can you verify which version of Python you have?  If your are using ActiveState Python 64 bit edition, it is does not have all of the things necessary for the lightmapper.  The 32 bit version does work on a 64 bit machine though.

#58
akaliel

akaliel
  • Members
  • 75 Beiträge
James: Can we expect to get shadows cast by other objects, like buildings and landscape?

#59
James Goldman

James Goldman
  • BioWare Employees
  • 25 Beiträge
What the ...?? OK, sunlight does not appear to be showing up in the shadow maps. I'll be looking into that. Static lights are working fine for shadows.



Otherwise, akaliel, the answer is "yes". ;)

#60
Qkrch

Qkrch
  • Members
  • 128 Beiträge

James Goldman wrote...

What the ...?? OK, sunlight does not appear to be showing up in the shadow maps. I'll be looking into that. Static lights are working fine for shadows.


Cool, for me is the only thing that isn't working. :police:

#61
Allan Smith

Allan Smith
  • BioWare Employees
  • 83 Beiträge
If you are using the new lightmapper files and are still seeing the issues that were fixed, it may be that there are some old files getting in the way. Delete MyDocuments\\Bioware\\Dragon Age\\Toolset\\lvlworkspace\\ and you should be good to go.

Bearbeitet von Allan Smith, 26 November 2009 - 08:27 .


#62
oni_step

oni_step
  • Members
  • 8 Beiträge
@ Dorotea: Don't thank me. Thank the IT guys at my work. They are the ones with the idea of the safe mode thing. =)

I too though am having the exact same issue as Dorotea. I have a created two levels. One is a basic room and another is a basic 64x64 exterior level. Everytime I try to render lightmaps, it just hangs and does nothing. Who knows. Maybe it has something to do with registering the dll in safe mode. Got me.

As for python version, I have tried the activestate version and the regular python version and both do the same thing of just waiting and doing nothing. And no, they are not both installed at the same time. I would uninstall python, then the toolset and then install the other python and then the toolset. All the python installs are coming from the links on the wiki site. I did find something that might be helpful or not. When I tried the regular python install (not activestate), I started the toolset up with no extensions installed for test purposes. When I ran rendered the lightmaps, it would not just hang but would actually go through the process only to give me a missing file error. Then I installed the extensions for python and that's where is would just hang and do nothing. All this by the way is as administrator and not a user account with administrator rights. Hope this helps cause i am so wanting to create some levels for this game. Kudos on a great game.

Bearbeitet von oni_step, 26 November 2009 - 09:01 .


#63
James Goldman

James Goldman
  • BioWare Employees
  • 25 Beiträge
oni_step: at one point during development of eclipseray, I suspected there was a race condition in Yafray (the open source raytracer backend, see http://www.yafaray.org/) that could cause it to hang, but the problem went away and I couldn't reproduce it again. Go to your level editor options and make sure the lightmapper command has --cpus=1 and see if that helps.

#64
James Goldman

James Goldman
  • BioWare Employees
  • 25 Beiträge
Sorry, that's assuming you have a multi-core CPU and it's already set to more than one, of course.

#65
oni_step

oni_step
  • Members
  • 8 Beiträge
I do have a dual core processor. It was set to 2 so I changed it to 1 and it still hangs. I tried a room, exterior level and created a new level and they all did nothing but hang. Let me ask this, the new lightmapper.py and eclipseray1.1 changed it to where the "missing light maps" error was suppressed or not to show up right? If that is the case, I do have the new eclipseray1.1 and it still shows the error. Don't know if that plays a part.

#66
dorotea

dorotea
  • Members
  • 19 Beiträge
Hi folks,



I am glad I did not get into reinstalling the tooset before reading the forum - as indeed if the Engine.dll is the same than it won't make any difference. So, yes, oni and I have the exact same problems - after forcing Engine.dll to register via using the safe mode. But I have Win XP 64 and I think hers is vista. ( I am now considering to switch to Win 7 64 - if that would fix my toolset, lol, but then I want to keep replaying my Baldurs Gate games, and was not sure if Win 7 would allow me to. :) )



I installed ActivePython-2.5.4.4-win32-x86.msi - it is 32 bit version and I think wiki mentioned that this is the version that works.



What is most interesting, I think that before my Engine.dll was actually forced-registered through using the safe mode I was getting this far ( citing from my log)



Wed Nov 25 00:01:42 2009, INFO, ".\\LvlEditorWnd.cpp", 5209, "Processing shadow map job C:\\DOCUME~1\\ADMINI~1\\LOCALS~1\\Temp\\DALightmap\\lay0011\\9A49EF20-0914-49FB-8BB9-D256ADEB5D25\\job_sm0.xml ..."

Wed Nov 25 00:01:43 2009, INFO, ".\\LvlEditorWnd.cpp", 5209, "Lightmapper script completed successfully."

Wed Nov 25 00:01:43 2009, INFO, ".\\LvlEditorWnd.cpp", 5209, "Submiting jobs to lightmapper took 2 seconds."

Wed Nov 25 00:01:43 2009, INFO, ".\\LvlEditorWnd.cpp", 5209, "Successfully submitted lightmap job."

Wed Nov 25 00:01:43 2009, INFO, ".\\LvlEditorWnd.cpp", 5209, "Running lightmapper script."

Wed Nov 25 00:01:43 2009, INFO, ".\\LvlEditorWnd.cpp", 5209, "Could not get a GFF reader object. Make sure Engine.dll is registered."

Wed Nov 25 00:01:43 2009, INFO, ".\\LvlEditorWnd.cpp", 5209, "Could not get a GFF reader object. Make sure Engine.dll is registered."

Wed Nov 25 00:01:43 2009, INFO, ".\\LvlEditorWnd.cpp", 5209, "Could not get a GFF reader object. Make sure Engine.dll is registered."



ETC ETC



After I forced Engine.dll to register it now fails before actually submitting the lightmap job at this stage :



Fri Nov 27 00:09:04 2009, WARNING, ".\\LvlEditorWnd.cpp", 5201, "No lightmap atlas found. Falling back to display legacy lightmaps in editor."

Fri Nov 27 00:09:04 2009, WARNING, ".\\LvlEditorWnd.cpp", 5201, "Failed to find lightmap-atlas info for model 'fhi_floorwood_0', part '_38d'"

Fri Nov 27 00:09:04 2009, WARNING, ".\\LvlEditorWnd.cpp", 5201, "Failed to find lightmap-atlas info for model 'fhi_wallbasic_0', part '_1k5'"

Fri Nov 27 00:09:04 2009, WARNING, ".\\LvlEditorWnd.cpp", 5201, "Failed to find lightmap-atlas info for model 'fhi_pillarwood_0', part '_1k7'"

Fri Nov 27 00:09:04 2009, WARNING, ".\\LvlEditorWnd.cpp", 5201, "Failed to find lightmap-atlas info for model 'fhi_wallbasic_0', part '_1k5'"

Fri Nov 27 00:09:04 2009, WARNING, ".\\LvlEditorWnd.cpp", 5201, "Failed to find lightmap-atlas info for model 'fhi_wallbasic_0', part '_1k5'"



and that' s it



I am using the same version of python - before and after 2.5.4.4



I can dig into more log files if you like but I bet the issue is in Engine.dll

#67
oni_step

oni_step
  • Members
  • 8 Beiträge
I might be on to something or not. I opened up the lightmapper.py file and at the beginning is a list of "imports". I am assuming that all of these are py files being loaded because I did a search for each one in the python directory and found them. I found them all except for "aergia" file. Could this be what is causing the lightmapper to hang?

Edit: Oh and I also modified the lightmapper.py file to have the aergia import not load. ( Put a "#" in front of aergia ). I ran the toolset and it didn't hang. Of course it did error out on me but it actually said in the log that it was running the script. Below is what the log said.

14:17:13 - Failed to submit lightmap layout [onitest]
14:17:13 - Job submission process failed with a return code of '1'.
14:17:13 - EclipseRay 1.1
14:17:13 - Lightmapper script failed. See errlog.txt for details.
14:17:13 - Running lightmapper script.
14:17:13 - Failed to find lightmap-atlas info for model 'chi_chafloor01', part '_iy'

Before i changed anything, the last thing the log would say was the lightmap-atlas issue and then just hang. I can give you what the error log says if you want, but I am sure it is pointless because it would have to do something with aergia not being imported.

Bearbeitet von oni_step, 27 November 2009 - 09:22 .


#68
James Goldman

James Goldman
  • BioWare Employees
  • 25 Beiträge
oni and dorotea: The lightmap-atlas info messages are suppressed in the code now, but that is in the level editor, so you won`t get that until the next toolset update. Sorry. Can you please make sure that you put --cpus=1 (with two dashes). If it has one dash it won`t respect the option, but I just noticed that it doesn`t actually report that failure. :S One more fix for the next version (early next week, if all goes well).



Aergia is the wrapper library around Yafray that exposes its objects to Python. If you comment out that import, then you are commenting out the raytracer. Needless to say, that won`t work. ;) I`m still thinking that it`s the elusive race condition I was trying to track down. When I get to work on Monday I`ll build a force non-multithreaded version you can try.



These kind of errors are difficult to track down because unfortunately everyone`s system is a bit different. That`s the big challenge of developing for the PC!

#69
oni_step

oni_step
  • Members
  • 8 Beiträge
Thanks for your help James. Do you have the aergia py file on your test computer? If so, could you send a copy to me to see if that helps. I googled the file and got nothing.

Edit: Oh wait. I read your post again and it looks like the aergia file is not a python file? Well when I open up the lightmapper file in the python editor and debug it, it errors out on the aergia import line. That's why I am wondering if it is the aergia file.

Bearbeitet von oni_step, 29 November 2009 - 06:50 .


#70
James Goldman

James Goldman
  • BioWare Employees
  • 25 Beiträge
You can't run that script from Python. Python has to be called from Eclipseray, which also provides the aergia library.

#71
Sharpaz

Sharpaz
  • Members
  • 100 Beiträge
hi everyone, i have a new lightmapper error with all my levels since yesterday's toolset reinstallation (because of graphicsprocessormsh was corrupted) (lightmapper was working before) :

E: 16:57:44 - Failed to run 'C:\\\\Program Files (x86)\\\\Dragon Age\\\\tools\\\\Lightmapper\\\\EclipseRay.exe LightMapper.py --terse -cpus=2 --numSubJobs 1 --inputDir ...etc

i have python 2.544 installed an reinstalled, toolset also reinstalled, and tried with eclisperay 1.1 and without... but always the same error.

If someone can help me please.

Bearbeitet von Sharpaz, 01 Dezember 2009 - 04:29 .


#72
James Goldman

James Goldman
  • BioWare Employees
  • 25 Beiträge
Oni, can you tell me something? When you say the lightmapper is hanging, are you talking about it stalling on the "Render Lightmaps and Wait" stage in the Manage Exports dialog? If so, do you see a message in the log window like "Lightmapper script completed successfully"? If so, that might explain why I can't track this down - I've been running the lightmapper manually and it succeeds. The hang seems to be somewhere else entirely.

#73
James Goldman

James Goldman
  • BioWare Employees
  • 25 Beiträge
Sharpaz: is the path correct? Failed to run means the process wasn't created.

#74
FalloutBoy

FalloutBoy
  • Members
  • 580 Beiträge
After reading this thread, I just want to confirm this. Sunlight is not casting any baked shadows for me. Am I doing something wrong or is this to be expected?



I have the latest lightmapper. I have a level with 1 very dim ambient light and the sunlight is configured to be bright red and pointing down. When I export and run I see bright red lighting on the character, but the level is only lit by the dim baked ambient that I created.


#75
James Goldman

James Goldman
  • BioWare Employees
  • 25 Beiträge
Expected until the next release of the lightmapper (soon)