Introduction and problem installing

Hello everyone!

My name’s Joe and I’m a student at Colorado State University. I’m attempting to install Panda3D 1.4.2 on Visual Studio 2005 (version 8 if I’m not terribly mistaken, just a bit new to Visual Studio), and I keep encountering some problems.

Under the “additional include directories” I’ve included:

note: ${Pandadir} = C:\Panda3D-1.4.2

{Pandadir}\include {Pandadir}\thirdparty\win-libs-vc8\nspr\include (Yep, downloaded third party tools)
${Pandadir}\thirdparty\win-python

And under “Additional Library Directories” I’ve added:

{Pandadir}\thirdparty\win-python\libs {Pandadir}\lib

The third party download didn’t seem to include this directory, (I’m assuming this was moved since version 1.3.x, the version the tutorial was written for):

${Pandadir}\thirdparty\win-libs-vc8\nspr\lib

When I attempt to compile the first sample program in the tutorial including just what’s listed above, I get:

“c:\panda3d-1.4.2\include\pandanode.h(55) : fatal error C1083: Cannot open include file: ‘Python.h’: No such file or directory”

So I searched for Python.h and found one under ${Pandadir}\include\parser-inc, and included that directory, but when I try to compile that, I get a gajillion other errors (syntax errors, mostly), so I’m assuming that’s not the Python.h it’s looking for.

I’m sorry if the solution to this has been posted, I tried searching the forums and Google, but I just can’t find the solution. I’d be very grateful if someone would help me out.

Thanks again! Panda3D looks awesome!

Edit: Visual Studio’s code completion is working on the samples, so I know it’s finding at least pandaFramework.h and pandaSystem.h.

Hey again.

I finally got the sample to compile, but when I run it, I get errors along the lines of “Unhandled exception at msvcr80.dll in pview.exe: Access violation reading location .”

Has anyone encountered this sort of problem? Is there something quick I can do to fix this? I would like to try developing in Python, but I’m trying to get this set up for a group of students who all have their hearts set on learning C++ game development.

Thanks!

Joe

Presumably there’s a reason you’re compiling it yourself, rather than simply downloading a precompiled binary.

Have you tried using the makepanda build script? This is the officially sanctioned way to build Panda. It is possible to build it within the Visual Studio IDE, but you’ll have to get your environment set up precisely right.

David

Sorry I wasn’t more specific. I downloaded a precompiled binary, unzipped it to my hard drive, and attempted to set up Visual Studio to run the “hello world” test in the tutorials. I’m not receiving these errors because I’m attempting to build Panda3D from source, I’m just trying to get the simple examples up and running.

Thanks,

Joe

Disney and CMU, the two primary developers of Panda3D, both use python. That’s not to say we don’t ever code in C++, it’s just that when we do, we usually just write a support class or two in C++, instead of trying to write an entire app in C++.

So really, the only people who do what you’re trying to do are a few guys on the forums. I’m not really sure who wrote those C++ tutorials, but they might be of questionable accuracy. Or maybe they were accurate when they were written, but things may have changed.

Long story short, if you want to write an entire app in C++ using panda, you’re in uncharted territory. I’m not saying it should be particularly painful, I’m just saying there aren’t many of us who can help you solve problems of the sort you’re having right now.

If I were in your shoes, my first step would be to get panda running under the Visual Studio debugger. This is not particularly hard. First step is to build panda using makepanda --everything --optimize 1. Then, to debug under visual studio, create a visual studio project file of type “Makefile”. Then, set the configuration options to make it run one of the sample programs: for example:

executable to debug: built\python\python.exe
command line args: -i Tut-Boxing-Robots.py
directory: samples\Sample-Programs–Boxing-Robots

If you can get that running, it’s a pretty small step from there to debugging your own application, with the ability to step into the panda libraries themselves.

I’ve been mucking around with Python, and it’s actually a pretty neat language. Since none of us really know what we’re doing, I think I’m going to convince the club to use Python until we do.

Thanks for the tips everyone.

Edit: Found a resource. Emacs is law.

Thanks,

Joe

Josh,

I’ll give that a try. If I can get it to work, I’ll try to write a new tutorial.

Thanks,

Joe