简单code一个例子,对max插件面板进行编写, 编这个东西就是界面..........script做简单的界面还是挺方便的,逻辑部分交给c++...

      gb的导出面板示例,gb自己写的导出dialog

当然在学习学习3Dmax,zbrush maya建模,次世代美术的道路上肯定会困难,没有好的学习资料,怎么去学习呢?
如果你感觉学不会?莫慌,小编推荐大家加入群,
群号684663881里有志同道合的小伙伴,
互帮互助,还可以拿到许多****!

       3D建模教程:3DMAX插件示例!

      ogre的脚本示例,script写的面板:

3D建模教程:3DMAX插件示例!

      开始:

      1.按照向导建立一个3dmax的工程,上篇有说如何建立,我选择的是Utility

      2.编译在max的utility面板

      3D建模教程:3DMAX插件示例!

      3.打开类向导给你做好的max面板,我起名字叫testdialog

  3D建模教程:3DMAX插件示例!

     4.以上都是max向导建好的,可以再这个地方直接进行开发.为了像gb那样在可以自定义一些按钮之类的东东需要script配合~

 

    5.模仿gb和一些插件. 在3ds Max 9/Scripts/Startup建一个testdialog.ms脚本,内容如下,这个会在max启动时候加载

    -- testdialog

fileIn "testdialog/hello.mcr"

    6.在3ds Max 9/Scripts/testdialog建立hello.mcr 内容如下,script 不明白的查一下, 注意DoScript这是跟c++交互的

    -- testDialog.mcr
-- 乔克叔叔2010.6.12

macroScript TestDialog
    category:"testdialog"
    internalCategory:"testDialog"
    buttonText:"Testdialog"
    tooltip:"TIP"
    --Icon:#("Maintoolbar",49)
(
    DoScript()
)
 

    7.在c++的3dmax工程里面加一段,def_visible_primitive(DoScript, "DoScript");跟脚本交互,细节看文档

    Value* DoScript_cf(Value** arg_list, int count) 
{
    // check we have 1 arg and that it's a string
    Interface* pkIntf = GetCOREInterface();
    
    return &ok;
}

def_visible_primitive(DoScript,
                      "DoScript");
//---------------------------------------------------------------------------

    8.编译,启动3dmax

    3D建模教程:3DMAX插件示例!

    9.现在点那个按钮,绑定的函数就有反应了,报错说明没加max要求的头文件.看文档 ^_^

    10.可以再TestDialog用script做面板,然后将参数传到c++里面.

    11.也可以直接在c++里面做面板,相当于写mfc...script不说了,很好做

    12.自己在c++里做面板.一.我不会直接使用max里面提供的面板像script做的那样,我在sdk里面没找到相关创建的函数. 二没有mfc,用了发现报了几个bug, 三.直接使用的win32的dialog. 一句话

    Value* DoScript_cf(Value** arg_list, int count) 
{
   // check we have 1 arg and that it's a string
   Interface* pkIntf = GetCOREInterface();
   DialogBox(hInstance, (LPCTSTR)(IDD_DIALOG1), NULL, (DLGPROC)DialogProc);//第一个实例用max的 IDD_DIALOG1是对话框资源的ID, 后面那个是消息函数   
   return &ok;

     13.好了 ,消息处理全整到c++里面了

     3D建模教程:3DMAX插件示例!

  

    14.下面真的到纯体力活了.......
 

相关文章:

  • 2021-08-05
  • 2021-12-22
  • 2021-11-12
  • 2021-10-22
  • 2021-06-28
  • 2021-08-23
  • 2021-04-17
  • 2021-09-27
猜你喜欢
  • 2021-05-20
  • 2021-11-14
  • 2021-12-13
  • 2021-12-16
  • 2021-09-25
  • 2021-09-29
  • 2021-11-01
相关资源
相似解决方案