ゲームプログラマになる前に覚えておきたい技術の第2章について

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
junjunjun

ゲームプログラマになる前に覚えておきたい技術の第2章について

#1

投稿記事 by junjunjun » 12年前

ゲームプログラマになる前に覚えておきたい技術の第2章のプロジェクト設定がわかりません。
設定してデバック開始を押してもコンパイルエラーになります。
これです。

1>------ ビルド開始: プロジェクト: drawPixels, 構成: Debug Win32 ------
1>GameLib_d.lib(OStringStream.obj) : error LNK2001: 外部シンボル ""public: static void __cdecl std::_String_base::_Xran(void)" (?_Xran@_String_base@std@@SAXXZ)" は未解決です。
1>GameLib_d.lib(Thread.obj) : error LNK2001: 外部シンボル ""public: static void __cdecl std::_String_base::_Xran(void)" (?_Xran@_String_base@std@@SAXXZ)" は未解決です。
1>GameLib_d.lib(DocumentImpl.obj) : error LNK2001: 外部シンボル ""public: static void __cdecl std::_String_base::_Xran(void)" (?_Xran@_String_base@std@@SAXXZ)" は未解決です。
1>GameLib_d.lib(Texture.obj) : error LNK2001: 外部シンボル ""public: static void __cdecl std::_String_base::_Xran(void)" (?_Xran@_String_base@std@@SAXXZ)" は未解決です。
1>GameLib_d.lib(Manager.obj) : error LNK2001: 外部シンボル ""public: static void __cdecl std::_String_base::_Xran(void)" (?_Xran@_String_base@std@@SAXXZ)" は未解決です。
1>GameLib_d.lib(Manager.obj) : error LNK2001: 外部シンボル ""public: static void __cdecl std::_String_base::_Xran(void)" (?_Xran@_String_base@std@@SAXXZ)" は未解決です。
1>GameLib_d.lib(InFile.obj) : error LNK2001: 外部シンボル ""public: static void __cdecl std::_String_base::_Xran(void)" (?_Xran@_String_base@std@@SAXXZ)" は未解決です。
1>GameLib_d.lib(Framework.obj) : error LNK2019: 未解決の外部シンボル "public: static void __cdecl std::_String_base::_Xran(void)" (?_Xran@_String_base@std@@SAXXZ) が関数 "public: class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > & __thiscall std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >::assign(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,unsigned int,unsigned int)" (?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ABV12@II@Z) で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2001: 外部シンボル ""public: static void __cdecl std::_String_base::_Xran(void)" (?_Xran@_String_base@std@@SAXXZ)" は未解決です。
1>GameLib_d.lib(Font.obj) : error LNK2001: 外部シンボル ""public: static void __cdecl std::_String_base::_Xran(void)" (?_Xran@_String_base@std@@SAXXZ)" は未解決です。
1>GameLib_d.lib(StringRenderer.obj) : error LNK2001: 外部シンボル ""public: static void __cdecl std::_String_base::_Xran(void)" (?_Xran@_String_base@std@@SAXXZ)" は未解決です。
1>GameLib_d.lib(OStringStream.obj) : error LNK2001: 外部シンボル ""public: static void __cdecl std::_String_base::_Xlen(void)" (?_Xlen@_String_base@std@@SAXXZ)" は未解決です。
1>GameLib_d.lib(Thread.obj) : error LNK2001: 外部シンボル ""public: static void __cdecl std::_String_base::_Xlen(void)" (?_Xlen@_String_base@std@@SAXXZ)" は未解決です。
1>GameLib_d.lib(DocumentImpl.obj) : error LNK2019: 未解決の外部シンボル "public: static void __cdecl std::_String_base::_Xlen(void)" (?_Xlen@_String_base@std@@SAXXZ) が関数 __ehhandler$?_Buynode@?$_Tree@V?$_Tmap_traits@VRefString@GameLib@@HU?$less@VRefString@GameLib@@@std@@V?$allocator@U?$pair@$$CBVRefString@GameLib@@H@std@@@4@$0A@@std@@@std@@IAEPAU_Node@?$_Tree_nod@V?$_Tmap_traits@VRefString@GameLib@@HU?$less@VRefString@GameLib@@@std@@V?$allocator@U?$pair@$$CBVRefString@GameLib@@H@std@@@4@$0A@@std@@@2@XZ で参照されました。
1>GameLib_d.lib(Texture.obj) : error LNK2001: 外部シンボル ""public: static void __cdecl std::_String_base::_Xlen(void)" (?_Xlen@_String_base@std@@SAXXZ)" は未解決です。
1>GameLib_d.lib(Manager.obj) : error LNK2001: 外部シンボル ""public: static void __cdecl std::_String_base::_Xlen(void)" (?_Xlen@_String_base@std@@SAXXZ)" は未解決です。
1>GameLib_d.lib(Manager.obj) : error LNK2001: 外部シンボル ""public: static void __cdecl std::_String_base::_Xlen(void)" (?_Xlen@_String_base@std@@SAXXZ)" は未解決です。
1>GameLib_d.lib(InFile.obj) : error LNK2001: 外部シンボル ""public: static void __cdecl std::_String_base::_Xlen(void)" (?_Xlen@_String_base@std@@SAXXZ)" は未解決です。
1>GameLib_d.lib(Framework.obj) : error LNK2001: 外部シンボル ""public: static void __cdecl std::_String_base::_Xlen(void)" (?_Xlen@_String_base@std@@SAXXZ)" は未解決です。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2001: 外部シンボル ""public: static void __cdecl std::_String_base::_Xlen(void)" (?_Xlen@_String_base@std@@SAXXZ)" は未解決です。
1>GameLib_d.lib(Font.obj) : error LNK2001: 外部シンボル ""public: static void __cdecl std::_String_base::_Xlen(void)" (?_Xlen@_String_base@std@@SAXXZ)" は未解決です。
1>GameLib_d.lib(StringRenderer.obj) : error LNK2001: 外部シンボル ""public: static void __cdecl std::_String_base::_Xlen(void)" (?_Xlen@_String_base@std@@SAXXZ)" は未解決です。
1>GameLib_d.lib(Halt.obj) : error LNK2019: 未解決の外部シンボル __imp__MessageBoxA@16 が関数 "void __cdecl GameLib::halt(char const *,int,char const *)" (?halt@GameLib@@YAXPBDH0@Z) で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2001: 外部シンボル "__imp__MessageBoxA@16" は未解決です。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__SetWindowPos@28 が関数 "public: void __thiscall GameLib::`anonymous namespace'::Impl::enableFullScreen(bool)" (?enableFullScreen@Impl@?A0x1cd4626c@GameLib@@QAEX_N@Z) で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__SetWindowLongA@12 が関数 "public: void __thiscall GameLib::`anonymous namespace'::Impl::enableFullScreen(bool)" (?enableFullScreen@Impl@?A0x1cd4626c@GameLib@@QAEX_N@Z) で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__GetWindowRect@8 が関数 "public: void __thiscall GameLib::`anonymous namespace'::Impl::enableFullScreen(bool)" (?enableFullScreen@Impl@?A0x1cd4626c@GameLib@@QAEX_N@Z) で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__DestroyWindow@4 が関数 __catch$_WinMain@16$0 で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__DispatchMessageA@4 が関数 __catch$_WinMain@16$0 で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__TranslateMessage@4 が関数 __catch$_WinMain@16$0 で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__TranslateAcceleratorA@12 が関数 __catch$_WinMain@16$0 で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__GetMessageA@16 が関数 __catch$_WinMain@16$0 で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__PeekMessageA@20 が関数 __catch$_WinMain@16$0 で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__DragAcceptFiles@8 が関数 __catch$_WinMain@16$0 で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__LoadAcceleratorsA@8 が関数 _WinMain@16 で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__AdjustWindowRect@12 が関数 "int __cdecl InitInstance(struct HINSTANCE__ *,int)" (?InitInstance@@YAHPAUHINSTANCE__@@H@Z) で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__RegisterClassExA@4 が関数 "unsigned short __cdecl MyRegisterClass(struct HINSTANCE__ *)" (?MyRegisterClass@@YAGPAUHINSTANCE__@@@Z) で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__LoadCursorA@8 が関数 "unsigned short __cdecl MyRegisterClass(struct HINSTANCE__ *)" (?MyRegisterClass@@YAGPAUHINSTANCE__@@@Z) で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__LoadIconA@8 が関数 "unsigned short __cdecl MyRegisterClass(struct HINSTANCE__ *)" (?MyRegisterClass@@YAGPAUHINSTANCE__@@@Z) で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__UpdateWindow@4 が関数 "int __cdecl InitInstance(struct HINSTANCE__ *,int)" (?InitInstance@@YAHPAUHINSTANCE__@@H@Z) で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__ShowWindow@8 が関数 "int __cdecl InitInstance(struct HINSTANCE__ *,int)" (?InitInstance@@YAHPAUHINSTANCE__@@H@Z) で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__CreateWindowExA@48 が関数 "int __cdecl InitInstance(struct HINSTANCE__ *,int)" (?InitInstance@@YAHPAUHINSTANCE__@@H@Z) で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__DragQueryFileA@16 が関数 "long __stdcall WndProc(struct HWND__ *,unsigned int,unsigned int,long)" (?WndProc@@YGJPAUHWND__@@IIJ@Z) で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__DefWindowProcA@16 が関数 "long __stdcall WndProc(struct HWND__ *,unsigned int,unsigned int,long)" (?WndProc@@YGJPAUHWND__@@IIJ@Z) で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__PostQuitMessage@4 が関数 "long __stdcall WndProc(struct HWND__ *,unsigned int,unsigned int,long)" (?WndProc@@YGJPAUHWND__@@IIJ@Z) で参照されました。
1>GameLib_d.lib(Font.obj) : error LNK2019: 未解決の外部シンボル __imp__GetTextMetricsW@8 が関数 "public: __thiscall GameLib::Scene::`anonymous namespace'::FontImplOS::FontImplOS(char const *,int,bool,bool,bool,bool,int,int)" (??0FontImplOS@?A0xca39bf44@Scene@GameLib@@QAE@PBDH_N111HH@Z) で参照されました。
1>GameLib_d.lib(Font.obj) : error LNK2019: 未解決の外部シンボル __imp__SelectObject@8 が関数 "public: __thiscall GameLib::Scene::`anonymous namespace'::FontImplOS::FontImplOS(char const *,int,bool,bool,bool,bool,int,int)" (??0FontImplOS@?A0xca39bf44@Scene@GameLib@@QAE@PBDH_N111HH@Z) で参照されました。
1>GameLib_d.lib(Font.obj) : error LNK2019: 未解決の外部シンボル __imp__CreateCompatibleDC@4 が関数 "public: __thiscall GameLib::Scene::`anonymous namespace'::FontImplOS::FontImplOS(char const *,int,bool,bool,bool,bool,int,int)" (??0FontImplOS@?A0xca39bf44@Scene@GameLib@@QAE@PBDH_N111HH@Z) で参照されました。
1>GameLib_d.lib(Font.obj) : error LNK2019: 未解決の外部シンボル __imp__CreateFontA@56 が関数 "public: __thiscall GameLib::Scene::`anonymous namespace'::FontImplOS::FontImplOS(char const *,int,bool,bool,bool,bool,int,int)" (??0FontImplOS@?A0xca39bf44@Scene@GameLib@@QAE@PBDH_N111HH@Z) で参照されました。
1>GameLib_d.lib(Font.obj) : error LNK2019: 未解決の外部シンボル __imp__GetGlyphOutlineA@28 が関数 "public: struct GameLib::Scene::A0xca39bf44::FontImplOS::Char const * __thiscall GameLib::Scene::`anonymous namespace'::FontImplOS::createGlyph(int)" (?createGlyph@FontImplOS@?A0xca39bf44@Scene@GameLib@@QAEPBUChar@1234@H@Z) で参照されました。
1>GameLib_d.lib(Font.obj) : error LNK2019: 未解決の外部シンボル __imp__DeleteObject@4 が関数 "public: virtual __thiscall GameLib::Scene::`anonymous namespace'::FontImplOS::~FontImplOS(void)" (??1FontImplOS@?A0xca39bf44@Scene@GameLib@@UAE@XZ) で参照されました。
1>GameLib_d.lib(Font.obj) : error LNK2019: 未解決の外部シンボル __imp__DeleteDC@4 が関数 "public: virtual __thiscall GameLib::Scene::`anonymous namespace'::FontImplOS::~FontImplOS(void)" (??1FontImplOS@?A0xca39bf44@Scene@GameLib@@UAE@XZ) で参照されました。
1>GameLib_d.lib(Manager.obj) : error LNK2001: 外部シンボル ""long const std::_BADOFF" (?_BADOFF@std@@3JB)" は未解決です。
1>GameLib_d.lib(Manager.obj) : error LNK2019: 未解決の外部シンボル "private: static void __cdecl std::locale::facet::facet_Register(class std::locale::facet *)" (?facet_Register@facet@locale@std@@CAXPAV123@@Z) が関数 "class std::ctype<char> const & __cdecl std::use_facet<class std::ctype<char> >(class std::locale const &)" (??$use_facet@V?$ctype@D@std@@@std@@YAABV?$ctype@D@0@ABVlocale@0@@Z) で参照されました。
1>GameLib_d.lib(Manager.obj) : error LNK2019: 未解決の外部シンボル "public: static void __cdecl std::_Locinfo::_Locinfo_ctor(class std::_Locinfo *,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (?_Locinfo_ctor@_Locinfo@std@@SAXPAV12@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@@Z) が関数 "public: __thiscall std::_Locinfo::_Locinfo(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (??0_Locinfo@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z) で参照されました。
1>GameLib_d.lib(Manager.obj) : error LNK2019: 未解決の外部シンボル __imp__GetAsyncKeyState@4 が関数 "public: void __thiscall GameLib::Input::ManagerImpl::update(float,class GameLib::Math::Vector2 const &)" (?update@ManagerImpl@Input@GameLib@@QAEXMABVVector2@Math@3@@Z) で参照されました。
1>GameLib_d.lib(Manager.obj) : error LNK2019: 未解決の外部シンボル __imp__GetKeyboardState@4 が関数 "public: void __thiscall GameLib::Input::ManagerImpl::update(float,class GameLib::Math::Vector2 const &)" (?update@ManagerImpl@Input@GameLib@@QAEXMABVVector2@Math@3@@Z) で参照されました。
1>GameLib_d.lib(Manager.obj) : error LNK2019: 未解決の外部シンボル __imp__ScreenToClient@8 が関数 "public: void __thiscall GameLib::Input::ManagerImpl::update(float,class GameLib::Math::Vector2 const &)" (?update@ManagerImpl@Input@GameLib@@QAEXMABVVector2@Math@3@@Z) で参照されました。
1>GameLib_d.lib(Manager.obj) : error LNK2019: 未解決の外部シンボル __imp__GetCursorPos@4 が関数 "public: void __thiscall GameLib::Input::ManagerImpl::update(float,class GameLib::Math::Vector2 const &)" (?update@ManagerImpl@Input@GameLib@@QAEXMABVVector2@Math@3@@Z) で参照されました。
1>D:\消すな!惇\ゲームプログラマになる前に覚えておきたい技術\GameLib2008\GameLib2008\src\02_2DGraphics1\Debug\drawPixels.exe : fatal error LNK1120: 外部参照 38 が未解決です。
========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ==========

どなたか、わかりやすくプロジェクト設定を1から教えて頂けないでしょうか?

アバター
Dixq (管理人)
管理人
記事: 1662
登録日時: 15年前
住所: 北海道札幌市
連絡を取る:

Re: ゲームプログラマになる前に覚えておきたい技術の第2章について

#2

投稿記事 by Dixq (管理人) » 12年前

ゲームプログラマになる前に覚えておきたい技術 とは、書籍ですか?

手元に本もありませんし、コードも無しに聞くのは無理が無いですか?

junjunjun

Re: ゲームプログラマになる前に覚えておきたい技術の第2章について

#3

投稿記事 by junjunjun » 12年前

書籍です。
コードは、

コード:

#include "GameLib/Framework.h"

namespace GameLib{
	void Framework::update(){
		unsigned* vram = videoMemory();
		static unsigned i;
		vram[ i ] += i * 100;
		i += 9973; //1万以下最大の素数
		i %= ( width() * height() );
	}
}
です。
適当に点を打つサンプルです。
できれば、「ゲームプログラマになる前に覚えておきたい技術」を一度でもした人にお答え頂ければ幸いです。

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 15年前
住所: 東海地方
連絡を取る:

Re: ゲームプログラマになる前に覚えておきたい技術の第2章について

#4

投稿記事 by softya(ソフト屋) » 12年前

2008版のライブラリを使っているようですが、コンパイラもVC++2008ですか?
※ 私も「ゲームプログラマになる前に覚えておきたい技術」は未経験ですが、ちゃんと情報を頂ければ推測できることもあります。

「ゲームプログラマになる前に覚えておきたい技術|サポート|秀和システム」
http://www.shuwasystem.co.jp/support/7980html/2118.html
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。


アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 15年前
住所: 東海地方
連絡を取る:

Re: ゲームプログラマになる前に覚えておきたい技術の第2章について

#6

投稿記事 by softya(ソフト屋) » 12年前

junjunjun さんが書きました:コンパイラはVC++2010です。
であれば紹介したサイトの2010用の物を使ってください。
バージョンがずれてエラーを起こしている可能性があります。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

junjunjun

Re: ゲームプログラマになる前に覚えておきたい技術の第2章について

#7

投稿記事 by junjunjun » 12年前

2010版でコンパイルしたところ、

1>------ ビルド開始: プロジェクト: drawPixels, 構成: Debug Win32 ------
1> main.cpp
1>d:\消すな!惇\ゲームプログラマになる前に覚えておきたい技術\gamelib2010\gamelib2010\src\02_2dgraphics1\drawpixels\main.cpp(1): fatal error C1083: include ファイルを開けません。'GameLib/Framework.h': No such file or directory
========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ==========

と出ます。
何がいけないのでしょうか?

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 15年前
住所: 東海地方
連絡を取る:

Re: ゲームプログラマになる前に覚えておきたい技術の第2章について

#8

投稿記事 by softya(ソフト屋) » 12年前

ダウンロードした圧縮ファイル中にあった2DGraphics1.slnから起動されていますか?
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。


アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 15年前
住所: 東海地方
連絡を取る:

Re: ゲームプログラマになる前に覚えておきたい技術の第2章について

#10

投稿記事 by softya(ソフト屋) » 12年前

junjunjun さんが書きました:はい。
圧縮ファイルは展開されていますよね?
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。


アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 15年前
住所: 東海地方
連絡を取る:

Re: ゲームプログラマになる前に覚えておきたい技術の第2章について

#12

投稿記事 by softya(ソフト屋) » 12年前

GAME_LIB_DIRがちゃんと設定されていないか、場所が間違っている可能性がありますね。
書籍を読みなおして、2010版としてちゃんと出来ているか確認しなおしてください。
2008版でやった事は全部やり直す必要が有ると思います。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

junjunjun

Re: ゲームプログラマになる前に覚えておきたい技術の第2章について

#13

投稿記事 by junjunjun » 12年前

>GAME_LIB_DIRがちゃんと設定されていないか、場所が間違っている可能性がありますね。
場所が間違っているなら、正しい場所は何なのでしょうか?

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 15年前
住所: 東海地方
連絡を取る:

Re: ゲームプログラマになる前に覚えておきたい技術の第2章について

#14

投稿記事 by softya(ソフト屋) » 12年前

junjunjun さんが書きました:>GAME_LIB_DIRがちゃんと設定されていないか、場所が間違っている可能性がありますね。
場所が間違っているなら、正しい場所は何なのでしょうか?
さすがに本がないの答えられないんで、こちらでやってみてください。
「新 「ゲームプログラマになる前に覚えておきたい技術」 VS2010対応|No:368|すらりん日記 | すらりん日記」
http://watery.dip.jp/slash/archives/368
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

junjunjun

Re: ゲームプログラマになる前に覚えておきたい技術の第2章について

#15

投稿記事 by junjunjun » 12年前

softya(ソフト屋)さんが紹介してくれた方法でもなりませんでした。
結果は、

1>------ ビルド開始: プロジェクト: drawPixels, 構成: Debug Win32 ------
1> main.cpp
1>d:\消すな!惇\ゲームプログラマになる前に覚えておきたい技術\gamelib2010\gamelib2010\src\02_2dgraphics1\drawpixels\main.cpp(1): fatal error C1083: include ファイルを開けません。'GameLib/Framework.h': No such file or directory
========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ==========

となります。
どなたか、方法を教えていただけないでしょうか?2010版で設定しています。
環境変数がいけないでしょうか?設定がいけないのでしょうか?

ISLe
記事: 2650
登録日時: 15年前
連絡を取る:

Re: ゲームプログラマになる前に覚えておきたい技術の第2章について

#16

投稿記事 by ISLe » 12年前

書籍には環境変数GAME_LIB_DIRの設定について書かれていないのでしょうか。
zipをダウンロードして展開したのであれば、自前で環境変数GAME_LIB_DIRを設定しなければいけないはずです。

環境変数GAME_LIB_DIRにはGameLib2010.zipを展開したGameLib2010フォルダのパスを設定します。
環境変数を設定したあと反映させるために、ログオン(あるいは再起動)し直す必要があるかもしれません。

junjunjun

Re: ゲームプログラマになる前に覚えておきたい技術の第2章について

#17

投稿記事 by junjunjun » 12年前

変数名、GAME_LIB_DIR
変数値、D:\GameLib2010
と、環境変数を設定しても出来ません。
何がいけないのでしょうか?

ISLe
記事: 2650
登録日時: 15年前
連絡を取る:

Re: ゲームプログラマになる前に覚えておきたい技術の第2章について

#18

投稿記事 by ISLe » 12年前

既に書いたことはやっているものとして…
あとは、D:\GameLib2010の下にGameLib2010フォルダがあったりとかですかね。
ソフトによってはファイル名でフォルダを作ってその下に展開するので。

junjunjun

Re: ゲームプログラマになる前に覚えておきたい技術の第2章について

#19

投稿記事 by junjunjun » 12年前

D:\GameLib2010の次は本体(中身)です。

junjunjun

Re: ゲームプログラマになる前に覚えておきたい技術の第2章について

#20

投稿記事 by junjunjun » 12年前

やった結果、

1>------ ビルド開始: プロジェクト: drawPixels, 構成: Debug Win32 ------
1> main.cpp
1>GameLib_d.lib(Framework.obj) : error LNK2019: 未解決の外部シンボル __imp__GetAsyncKeyState@4 が関数 "public: class GameLib::StandardInput & __thiscall GameLib::StandardInput::operator>>(char &)" (??5StandardInput@GameLib@@QAEAAV01@AAD@Z) で参照されました。
1>GameLib_d.lib(InputManaegr.obj) : error LNK2001: 外部シンボル "__imp__GetAsyncKeyState@4" は未解決です。
1>GameLib_d.lib(Halt.obj) : error LNK2019: 未解決の外部シンボル __imp__MessageBoxA@16 が関数 "void __cdecl GameLib::halt(char const *,int,char const *)" (?halt@GameLib@@YAXPBDH0@Z) で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2001: 外部シンボル "__imp__MessageBoxA@16" は未解決です。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__SetWindowPos@28 が関数 "public: void __thiscall GameLib::`anonymous namespace'::Impl::enableFullScreen(bool)" (?enableFullScreen@Impl@?A0x0807eba7@GameLib@@QAEX_N@Z) で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__SetWindowLongA@12 が関数 "public: void __thiscall GameLib::`anonymous namespace'::Impl::enableFullScreen(bool)" (?enableFullScreen@Impl@?A0x0807eba7@GameLib@@QAEX_N@Z) で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__GetWindowRect@8 が関数 "public: void __thiscall GameLib::`anonymous namespace'::Impl::enableFullScreen(bool)" (?enableFullScreen@Impl@?A0x0807eba7@GameLib@@QAEX_N@Z) で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__CoUninitialize@0 が関数 __catch$_WinMain@16$0 で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__DestroyWindow@4 が関数 __catch$_WinMain@16$0 で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__DispatchMessageA@4 が関数 __catch$_WinMain@16$0 で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__TranslateMessage@4 が関数 __catch$_WinMain@16$0 で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__TranslateAcceleratorA@12 が関数 __catch$_WinMain@16$0 で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__GetMessageA@16 が関数 __catch$_WinMain@16$0 で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__PeekMessageA@20 が関数 __catch$_WinMain@16$0 で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__DragAcceptFiles@8 が関数 __catch$_WinMain@16$0 で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__LoadAcceleratorsA@8 が関数 _WinMain@16 で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__CoInitializeEx@8 が関数 _WinMain@16 で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__AdjustWindowRect@12 が関数 "public: void __thiscall GameLib::`anonymous namespace'::Impl::createDefaultWindowPos(void)" (?createDefaultWindowPos@Impl@?A0x0807eba7@GameLib@@QAEXXZ) で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__RegisterClassExA@4 が関数 "unsigned short __cdecl MyRegisterClass(struct HINSTANCE__ *)" (?MyRegisterClass@@YAGPAUHINSTANCE__@@@Z) で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__LoadCursorA@8 が関数 "unsigned short __cdecl MyRegisterClass(struct HINSTANCE__ *)" (?MyRegisterClass@@YAGPAUHINSTANCE__@@@Z) で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__LoadIconA@8 が関数 "unsigned short __cdecl MyRegisterClass(struct HINSTANCE__ *)" (?MyRegisterClass@@YAGPAUHINSTANCE__@@@Z) で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__UpdateWindow@4 が関数 "int __cdecl InitInstance(struct HINSTANCE__ *,int)" (?InitInstance@@YAHPAUHINSTANCE__@@H@Z) で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__ShowWindow@8 が関数 "int __cdecl InitInstance(struct HINSTANCE__ *,int)" (?InitInstance@@YAHPAUHINSTANCE__@@H@Z) で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__CreateWindowExA@48 が関数 "int __cdecl InitInstance(struct HINSTANCE__ *,int)" (?InitInstance@@YAHPAUHINSTANCE__@@H@Z) で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__DragQueryFileA@16 が関数 "long __stdcall WndProc(struct HWND__ *,unsigned int,unsigned int,long)" (?WndProc@@YGJPAUHWND__@@IIJ@Z) で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__DefWindowProcA@16 が関数 "long __stdcall WndProc(struct HWND__ *,unsigned int,unsigned int,long)" (?WndProc@@YGJPAUHWND__@@IIJ@Z) で参照されました。
1>GameLib_d.lib(WindowCreator.obj) : error LNK2019: 未解決の外部シンボル __imp__PostQuitMessage@4 が関数 "long __stdcall WndProc(struct HWND__ *,unsigned int,unsigned int,long)" (?WndProc@@YGJPAUHWND__@@IIJ@Z) で参照されました。
1>GameLib_d.lib(Font.obj) : error LNK2019: 未解決の外部シンボル __imp__GetTextMetricsA@8 が関数 "public: __thiscall GameLib::Scene::`anonymous namespace'::FontImplOS::FontImplOS(char const *,int,bool,bool,bool,bool,int,int)" (??0FontImplOS@?A0x39b6acdb@Scene@GameLib@@QAE@PBDH_N111HH@Z) で参照されました。
1>GameLib_d.lib(Font.obj) : error LNK2019: 未解決の外部シンボル __imp__SelectObject@8 が関数 "public: __thiscall GameLib::Scene::`anonymous namespace'::FontImplOS::FontImplOS(char const *,int,bool,bool,bool,bool,int,int)" (??0FontImplOS@?A0x39b6acdb@Scene@GameLib@@QAE@PBDH_N111HH@Z) で参照されました。
1>GameLib_d.lib(Font.obj) : error LNK2019: 未解決の外部シンボル __imp__CreateCompatibleDC@4 が関数 "public: __thiscall GameLib::Scene::`anonymous namespace'::FontImplOS::FontImplOS(char const *,int,bool,bool,bool,bool,int,int)" (??0FontImplOS@?A0x39b6acdb@Scene@GameLib@@QAE@PBDH_N111HH@Z) で参照されました。
1>GameLib_d.lib(Font.obj) : error LNK2019: 未解決の外部シンボル __imp__CreateFontA@56 が関数 "public: __thiscall GameLib::Scene::`anonymous namespace'::FontImplOS::FontImplOS(char const *,int,bool,bool,bool,bool,int,int)" (??0FontImplOS@?A0x39b6acdb@Scene@GameLib@@QAE@PBDH_N111HH@Z) で参照されました。
1>GameLib_d.lib(Font.obj) : error LNK2019: 未解決の外部シンボル __imp__GetGlyphOutlineA@28 が関数 "public: struct GameLib::Scene::A0x39b6acdb::FontImplOS::Char const * __thiscall GameLib::Scene::`anonymous namespace'::FontImplOS::createGlyph(int)" (?createGlyph@FontImplOS@?A0x39b6acdb@Scene@GameLib@@QAEPBUChar@1234@H@Z) で参照されました。
1>GameLib_d.lib(Font.obj) : error LNK2019: 未解決の外部シンボル __imp__DeleteObject@4 が関数 "public: virtual __thiscall GameLib::Scene::`anonymous namespace'::FontImplOS::~FontImplOS(void)" (??1FontImplOS@?A0x39b6acdb@Scene@GameLib@@UAE@XZ) で参照されました。
1>GameLib_d.lib(Font.obj) : error LNK2019: 未解決の外部シンボル __imp__DeleteDC@4 が関数 "public: virtual __thiscall GameLib::Scene::`anonymous namespace'::FontImplOS::~FontImplOS(void)" (??1FontImplOS@?A0x39b6acdb@Scene@GameLib@@UAE@XZ) で参照されました。
1>GameLib_d.lib(InputManaegr.obj) : error LNK2019: 未解決の外部シンボル __imp__GetKeyboardState@4 が関数 "public: void __thiscall GameLib::Input::ManagerImpl::update(float,class GameLib::Math::Vector2 const &)" (?update@ManagerImpl@Input@GameLib@@QAEXMABVVector2@Math@3@@Z) で参照されました。
1>GameLib_d.lib(InputManaegr.obj) : error LNK2019: 未解決の外部シンボル __imp__ScreenToClient@8 が関数 "public: void __thiscall GameLib::Input::ManagerImpl::update(float,class GameLib::Math::Vector2 const &)" (?update@ManagerImpl@Input@GameLib@@QAEXMABVVector2@Math@3@@Z) で参照されました。
1>GameLib_d.lib(InputManaegr.obj) : error LNK2019: 未解決の外部シンボル __imp__GetCursorPos@4 が関数 "public: void __thiscall GameLib::Input::ManagerImpl::update(float,class GameLib::Math::Vector2 const &)" (?update@ManagerImpl@Input@GameLib@@QAEXMABVVector2@Math@3@@Z) で参照されました。
1>D:\消すな!惇\ゲームプログラマになる前に覚えておきたい技術\GameLib2010\GameLib2010\src\02_2DGraphics1\Debug\drawPixels.exe : fatal error LNK1120: 外部参照 35 が未解決です。
========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ==========

と、コンパイルエラーになりました。
何が違うのでしょうか?

junjunjun

Re: ゲームプログラマになる前に覚えておきたい技術の第2章について

#21

投稿記事 by junjunjun » 12年前

なりました!
初期設定のときに、データは同じなんだけれども複数のファイルから呼んでいて、ファイルを統一したらなりました。
皆様ご回答ありがとうございました。
また、次の機会にお願いいたします。

閉鎖

“C言語何でも質問掲示板” へ戻る