implemented directx 9 support for panda

This commit is contained in:
Asad M. Zaman 2004-01-29 03:28:53 +00:00
parent 906a0547b7
commit 4ef51228a3
4 changed files with 97 additions and 0 deletions

View File

@ -0,0 +1,24 @@
#define BUILD_DIRECTORY $[HAVE_DX]
// DIR_TYPE "metalib" indicates we are building a shared library that
// consists mostly of references to other shared libraries. Under
// Windows, this directly produces a DLL (as opposed to the regular
// src libraries, which don't produce anything but a pile of OBJ files
// under Windows).
#define DIR_TYPE metalib
#define BUILDING_DLL BUILDING_PANDADX
#define COMPONENT_LIBS \
dxgsg9
#define LOCAL_LIBS gsgbase display express gobj
#define OTHER_LIBS dtoolconfig dtool
#begin metalib_target
#define TARGET pandadx9
#define SOURCES pandadx9.cxx
#define WIN_SYS_LIBS \
ddraw.lib dxguid.lib winmm.lib \
kernel32.lib gdi32.lib user32.lib advapi32.lib $[WIN_SYS_LIBS]
#end metalib_target

View File

@ -0,0 +1,21 @@
// Filename: pandadx.cxx
// Created by: masad (15Jan04)
//
////////////////////////////////////////////////////////////////////
#include "pandadx9.h"
#include "config_dxgsg9.h"
////////////////////////////////////////////////////////////////////
// Function: init_libpandadx
// Description: Initializes the library. This must be called at
// least once before any of the functions or classes in
// this library can be used. Normally it will be
// called by the static initializers and need not be
// called explicitly, but special cases exist.
////////////////////////////////////////////////////////////////////
void
init_libpandadx9() {
init_libdxgsg9();
}

View File

@ -0,0 +1,13 @@
// Filename: pandadx.h
// Created by: masad (15Jan04)
//
////////////////////////////////////////////////////////////////////
#ifndef PANDADX9_H
#define PANDADX9_H
#include "pandabase.h"
EXPCL_PANDADX void init_libpandadx9();
#endif

39
panda/src/dxgsg9/Sources.pp Executable file
View File

@ -0,0 +1,39 @@
#define BUILD_DIRECTORY $[HAVE_DX]
#define OTHER_LIBS interrogatedb:c dconfig:c dtoolconfig:m \
dtoolutil:c dtoolbase:c dtool:m
#define USE_PACKAGES dx
#begin lib_target
#define TARGET dxgsg9
#define LOCAL_LIBS \
gsgmisc gsgbase gobj display windisplay \
putil linmath mathutil pnmimage event
#define COMBINED_SOURCES $[TARGET]_composite1.cxx
// need to install these due to external projects that link directly with libpandadx (bartop)
#define INSTALL_HEADERS \
dxgsg9base.h config_dxgsg9.h dxGraphicsStateGuardian9.I dxGraphicsStateGuardian9.h \
dxTextureContext9.h dxGeomNodeContext9.h dxGeomNodeContext9.I d3dfont9.h \
dxGraphicsDevice9.h
// build dxGraphicsStateGuardian separately since its so big
#define SOURCES \
dxGraphicsStateGuardian9.cxx dxSavedFrameBuffer9.I dxSavedFrameBuffer9.h \
dxGraphicsDevice9.h \
wdxGraphicsPipe9.I wdxGraphicsPipe9.h \
wdxGraphicsWindow9.I wdxGraphicsWindow9.h \
$[INSTALL_HEADERS]
#define INCLUDED_SOURCES \
config_dxgsg9.cxx \
dxSavedFrameBuffer9.cxx dxTextureContext9.cxx \
dxGeomNodeContext9.cxx \
d3dfont9.cxx \
dxGraphicsDevice9.cxx \
wdxGraphicsPipe9.cxx wdxGraphicsWindow9.cxx
#end lib_target