[WebCast 培訓(xùn)] Day 2 - 3ds Max - Webcast Training_第1頁
[WebCast 培訓(xùn)] Day 2 - 3ds Max - Webcast Training_第2頁
[WebCast 培訓(xùn)] Day 2 - 3ds Max - Webcast Training_第3頁
[WebCast 培訓(xùn)] Day 2 - 3ds Max - Webcast Training_第4頁
[WebCast 培訓(xùn)] Day 2 - 3ds Max - Webcast Training_第5頁
已閱讀5頁,還剩47頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、 2009 Autodesk 1Introduction to Animation 3ds Webcast Day 2 Stephen taylor 2009 Autodesk 2Creating Plugins Write From Scratch Use Plugin Wizard Copy/Modify Existing Plugin 2009 Autodesk 3Creating Plugins Write From ScratchTruly minimalist class Use Plugin Wizard Copy/Modify Existing Plugin 2009 Auto

2、desk 4Creating Plugins Write From ScratchTruly minimalist class Use Plugin WizardMostly minimal codeFastest setup time Copy/Modify Existing Plugin 2009 Autodesk 5Creating Plugins Write From ScratchTruly minimalist class Use Plugin WizardMostly minimal codeFastest setup time Copy/Modify Existing Plug

3、inProduction CodeCan be very confusing 2009 Autodesk 6The Plugin Wizard 2009 Autodesk 7Week 1 2009 Autodesk 8Introduction to Animation What is animation?Changing values over time Whats a Value?Conceptually everything used in the scene?NumbersMath Classes (Point3, Matrix3 etc)Geometry classesMaterial

4、s, texturesEtc.PracticallyNumbersMath Classes 2009 Autodesk 9Grand-Daddy of all Classes AnimatableRoot of the class hierarchy for all Scene classes 2009 Autodesk 10Grand-Daddy of all Classes AnimatableRoot of the class hierarchy for all Scene classes What does it do?Provides interfaces common to all

5、 Max scene classesSimple state (flags)ParametersClass Ids 2009 Autodesk 11Grand-Daddy of all Classes AnimatableRoot of the class hierarchy for all Scene classes What does it do?Provides interfaces common to all Max scene classesSimple state (flags)ParametersClass Ids What does it NOT do?It doesnt pr

6、ovide any specific computational functionalityNo real way to check if the class is animated or not 2009 Autodesk 12Will the real Anim Class Please Stand Up? Although all classes are technically animatable, sooner or later a class has to compute a numerical value 2009 Autodesk 13Will the real Anim Cl

7、ass Please Stand Up?Control 2009 Autodesk 14Will the real Anim Class Please Stand Up?Control(ler) derives (indirectly) from Animatable 2009 Autodesk 15How to make 1 = 2 Control is a “base” class Supports various value types Get/Set values 2009 Autodesk 16How to make 1 = 2 Control is a “base” classWh

8、ich means of course that we can plug it! Supports various value types Get/Set values 2009 Autodesk 17How to make 1 = 2 Control is a “base” classWhich means of course that we can plug it! Supports various value typesFloat, Position, Matrix3, Color, etc Get/Set values 2009 Autodesk 18How to make 1 = 2

9、 Control is a “base” classWhich means of course that we can plug it! Supports various value typesFloat, Position, Matrix3, Color, etc Get/Set values:GetValue :SetValue 2009 Autodesk 19Differentiating yourself SuperClassIDCTRL_FLOAT_CLASS_IDCTRL_POSITION_CLASS_IDCTRL_COLOR_CLASS_ID 2009 Autodesk 20Di

10、fferentiating yourselfGetSetMethod ABSOLUTE RELATIVE SuperClassIDCTRL_FLOAT_CLASS_IDCTRL_POSITION_CLASS_IDCTRL_POINT3_CLASS_IDfloatPoint3Point3floatMatrix3Point3 2009 Autodesk 21Get/Set Value. GetValue(TimeValue t, void* value, Interval valid, GetSetMethod method); SetValue(TimeValue t, void* value,

11、 int commit, GetSetMethod method); 2009 Autodesk 22A Matter of Time Maxs time unit is called a Tick1 Tick = 1 / 4800 second Ticks are counted by a TimeValuetypedef TimeValue int All times passed in Max are in TickNot seconds, not frames. 2009 Autodesk 23To Key, or Not To Key KeyFrame Animations Para

12、metric Animation 2009 Autodesk 24To Key, or Not To Key KeyFrame AnimationsInterpolate between user-defined valuesBezier, Linear, StepCan be exportedEasily User-Controlled Parametric Animation 2009 Autodesk 25To Key, or Not To Key KeyFrame AnimationsInterpolate between user-defined valuesBezier, Line

13、ar, StepCan be exportedEasily User-Controlled Parametric AnimationDeriving a value using an equationPhysical SimulationsUn-conscious movements 2009 Autodesk 26The Sample Code Download the source now. We will be looking at PSPositionController.cpp We have implemented a simple position controller 2009

14、 Autodesk 27I believe I can fall 2009 Autodesk 28Anatomy of a Controller 2009 Autodesk 29Anatomy of a Controller 2009 Autodesk 30Anatomy of a Controller 2009 Autodesk 31Anatomy of a Controller 2009 Autodesk 32Custom Code p(t + 1) = p(t) + (v * f) 2009 Autodesk 33Custom Code p(t + 1) = p(t) + (v * f)

15、 2009 Autodesk 34Custom Code p(t + 1) = p(t) + (v * f) 2009 Autodesk 35Custom Code p(t + 1) = p(t) + (v * f) 2009 Autodesk 36Custom Code p(t + 1) = p(t) + (v * f) 2009 Autodesk 37Tasks (1 of 2) Implement SetValue to modify the initial positionDont forget about CTRL_ABSOLUTE/RELATIVE *Point3* pVal =

16、(Point3*)val;if (method = CTRL_RELATIVE) m_vPosition += *pVal; else . Contrary to the documentation, SetValue for a Position Controller takes a Point3 for both CTRL_ABSOLUTE & CTRL_RELATIVE 2009 Autodesk 38Tasks (2 of 2) Change the force used in GetValue to be ve position In essence this makes the a

17、ngle of acceleration always towards the originScale it (and optionally normalize it). Otherwise the acceleration will overpower the velocity. 2009 Autodesk 39 2009 Autodesk 40Whats wrong with this picture? 2009 Autodesk 41How SetValue works SetValue is a relative callUser drags in the viewport relat

18、ive to the current position Many very small relative movements introduce error One large relative movement minimizes error 2009 Autodesk 42How SetValue works User begins to drag (mouse down) User Continues to drag User finishes drag (mouse up) 2009 Autodesk 43How SetValue works User begins to drag (

19、mouse down)Undo System initializedFirst movement registered User Continues to drag User finishes drag (mouse up) 2009 Autodesk 44How SetValue works User begins to drag (mouse down)Undo System initializedFirst movement registered User Continues to dragUndo System CancelledReturn to original valuenew

20、value set User finishes drag (mouse up) 2009 Autodesk 45How SetValue works User begins to drag (mouse down)Undo System initializedFirst movement registered User Continues to dragUndo System CancelledReturn to original valuenew value set User finishes drag (mouse up)Undo system finalizedStore final value 2009 Autodesk 46The Sample code PSPositionUndoHandles undo/r

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論