Facebook Twitter YouTube Frictional Games | Forum | Newsletter | Dev Blog | Dev Wiki | Support


Post Reply 
Solutions to a few common problems.
Author Message
wally Offline
Junior Member

Posts: 28
Joined: Mar 2010
Reputation: 0
Post: #1
Solutions to a few common problems.

Alright so I spent the better part of the last 6 or so hours figuring out how to get Penumbra compiled, and most of that time was not being able to find solutions to problems people already had. I figured it would be a idea to post them here for newcomers.

Problem 1:
In MeshLoaderColladaLoader.cpp, lines 1256,  1278 and 1300.
cString::FloatStringToArray(&vRawData[0],pVecText->Value(),lSize * 3);

This one tripped me up for a little while, until I commented it out and just used the code right above it. Worked like a charm, and I can find no real problems with doing said method.

Problem 2:
Crash upon entering the first real level, directly after opening the hatch that was covered in ice. This one was a little trickier to figure out, as there was no directly stated solution, but I have found that user Ricky has a solution that works for this. You can find his bugfixes for this problem here. (I'm assuming hes okay with me sharing his crafty bugfixes.) The fix for this particular problem is just modifying two lines in MeshLoaderCollada.cpp.

Problem 3:
Crash upon entering the storage room. This one I actually did myself, and am rather proud of in my amateur, sleep-deprived state. Line 470 and 471 in AINodeContainer.cpp sometimes causes a divide-by-zero error, which I somehow stumbled upon. You can see what I did to fix it here.

And thats all I've got. Hopefully this will help the uninitiated create some stuff.
08-02-2010 12:19 PM
Find all posts by this user Quote this message in a reply
Thomas Offline
Frictional Games

Posts: 2,455
Joined: Apr 2006
Reputation: 44
Post: #2
RE: Solutions to a few common problems.

Nice finds!

Strange problems with these never popped up on any of the platforms.

Telling Edward about it so it can be pushed (or what it is called) to the main source distro.
(This post was last modified: 08-02-2010 02:44 PM by Thomas.)
08-02-2010 02:44 PM
Find all posts by this user Quote this message in a reply
Thomas Offline
Frictional Games

Posts: 2,455
Joined: Apr 2006
Reputation: 44
Post: #3
RE: Solutions to a few common problems.

For the AiNodeContainer, I think a better fix would be:

Quote:cVector2l vGridPos(0);
if(mvGridSize.x >0)
vGridPos.x = (int)(vLocalPos.x / mvGridSize.x);
if(mvGridSize.y >0)
vGridPos.y = (int)(vLocalPos.y / mvGridSize.y);

Since other wise vGridPos might be uninitialized + it might be that the x-axis is 0 but not the y-axis of mvGridSize.
(This post was last modified: 08-02-2010 02:54 PM by Thomas.)
08-02-2010 02:53 PM
Find all posts by this user Quote this message in a reply
Thomas Offline
Frictional Games

Posts: 2,455
Joined: Apr 2006
Reputation: 44
Post: #4
RE: Solutions to a few common problems.

And oh,

your "Problem1" is probalby just fixed by using this fix:
Quote:vRawData.resize(lSize * 3);
(instead of vRawData.reserve(lSize * 3);
08-02-2010 02:58 PM
Find all posts by this user Quote this message in a reply
wally Offline
Junior Member

Posts: 28
Joined: Mar 2010
Reputation: 0
Post: #5
RE: Solutions to a few common problems.

Thanks for the replies! Better fixes help a bunch.
08-02-2010 10:47 PM
Find all posts by this user Quote this message in a reply
Post Reply 




User(s) browsing this thread: 1 Guest(s)