3D Max 2014 플러그인 만들기 준비 3D Max / Blender 3D / Houdini

3D Max 2014는 기본적으로 64비트이다. 당연히 플로그인 역시 64비트로 제작하여야 하는데...
2014 플러그인의 경우 Visual Studio 2010의 컴파일러가 필요하다.
여기서 어이없는 상황이 발생하는데 기본적으로 2010 컴파일러는 32비트만 지원하고 64비트는 추가적인 서비스팩과 SdK를 설치하여야 한다. 아래와 같은 수많은 문제들을 해결하고 나면 2014용 맥스 플러그인을 제작할수 있게된다.

  • 빌드도중 파일을 열수 없다고 투덜대는 경우
    • 관리자 권한으로 Visual Studio를 실행하자
  • Windows SDK 7.1 설치 오류
    • visual studio 2010 redistributable와 충돌이 생기므로 제거한후 redistributable 재설치
  • fatal error C1902: Program database manager mismatch; please check your installation
    • If you have kept mspdb100.dll in D:\Program Files\Microsoft Visual Studio 10.0\VC\bin folder means this problem will be there. Remove it from the bin folder it is not suppose to be there.
  • fatal error C1902: Program database manager mismatch; please check your installation
    • C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin, C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\Amd64 폴더아래의
      mspdb100.dll 파일을 제거 ( .old 확장자로 변경해두자 )
  • error RC1015: cannot open include file 'afxres.h'.
    • This header is a part of the MFC Library. VS Express edition doesn't contain MFC.
      If your project doesn't use MFC you can safely replace afxres.h with windows.h in your terrain2.rc.
      And #define IDC_STATIC  -1.
    • example)
      #include "WinResrc.h"
      #define IDC_STATIC  -1
  • LINK : fatal error LNK1181: cannot open input file 'kernel32.lib'
    • 속성의 라이브러리 디렉토리에 추가하자 : C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Lib\x64
  • LINK : fatal error LNK1123: failure during conversion to COFF: file invalid or corrupt
    • Apply all service packs and updates for your version of Visual Studio. This is particularly important for Visual Studio 2010.

    • Try building with incremental linking disabled. On the menu bar, choose ProjectProperties. In the Property Pages dialog box, expandConfiguration PropertiesLinker. Change the value of Enable Incremental Linking to No.

    • Verify that the version of CVTRES.EXE found first in your PATH environment variable matches the version of the build tools, or the version of the Platform Toolset, used by your project.

    • Try turning off the Embed Manifest option. On the menu bar, choose ProjectProperties. In the Property Pages dialog box, expandConfiguration PropertiesManifest ToolInput and Output. Change the value of Embed Manifest to No.

    • Make sure that the file type is valid. For example, make sure that an OMF object is 32-bit and not 16-bit. For more information, see .Obj Files as Linker Input and Microsoft PE and COFF Specification.

    • Make sure that the file is not corrupt. Rebuild it, if necessary.

    • 링크시 해당 녀석을 이용해 링크를 진행해야하는데 종속성에 관한 문제로 cvtres.exe 자체가 실행이 되질 않아서 생기는 문제이다. 
      원래 제시한 해법은 .Net Framework 를 언인스톨 했다가 재설치하라는것 같은데 다른방법으로 처리가능.. 
      에러가 난 버전의 VC 폴더에 있는 cvtres.exe 를 지우고 잘 돌아가는 버전의 cvtres.exe 로 복사후 링크하면 된다.
    • Go to C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\cvtres.exe and check the version of cvtres.exe:
      Wrong version:  03/18/2010  01:16 PM            31,048 cvtres.exe
      Correct version: 02/21/2011  06:03 PM            31,056 cvtres.exe
      If you have wrong version you should go to
      C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\bin\cvtres.exe
      and copy cvtres.exe then replace it with
      C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\cvtres.exe
  • 'muirct.exe'은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는 배치 파일이 아닙니다.
    RunMUIRCT : error : executing muirct.exe failed. Could not convert C:\Program Files\Autodesk\3ds Max 2014\plugins\maxProject4.dlk

    • 프로젝트 속성에서 실행 가능 디렉터리에 추가해준다 : C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Bin\x64

덧글

댓글 입력 영역