iOS動畫指南 4 右拉的3D抽屜效果

2021-07-22 04:58:03 字數 2448 閱讀 9619

dariel在杭州(@dariel在杭州)

一切的動畫其實都是假象,3d效果也是這樣.本篇我們來做乙個這樣的特效.

先忽略掉3d效果,我們先要做的是乙個右拉的抽屜效果.

總體思路:

1.建立乙個containerviewcontroller容器控制器,然後把左側選擇選單的sidemenuviewcontroller,和右側負責顯示內容的mainviewcontroller 新增到containerviewcontroller中.

2.給容器控制器containerviewcontroller新增乙個手勢監聽,通過修改偏移量完成抽屜效果.

3.設定anchorpoint,給左側sidemenuviewcontroller的view以及左上角的按鈕新增3d效果.

如果想知道詳情請看**,我們這邊把核心的部分說下:

objective-c

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

func

handlegesture

(recognizer

: uipangesturerecognizer),

completion:)

default

: break

}

}

objective-c

1

2

3

4

5

6

7

8

9

10

11

12

13

14

func

settopercent

(percent

: cgfloat)

} objective-c

12

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

// 根據百分比新增乙個3d特效

func

menutransformforpercent

(percent

: cgfloat

)->

catransform3d

// 為按鈕新增乙個3d效果

func

buttontransformforpercent

(percent

: cgfloat

)->

catransform3d

本文整理自 : ios.animations.by.tutorials.v2.0

原始碼 : 

3D中帶光照的骨骼動畫原理

常見的模型動畫分為關鍵幀動畫與骨骼動畫,這裡我只關注與骨骼動畫,骨骼動畫又叫頂點混合動畫。頂點混合維護了乙個單獨預設姿勢和許多用來正確旋轉 平移預設姿勢的多邊形網格的各個部分矩陣,這些不同的矩陣變換通常被稱為骨骼。乙個或多個這樣的矩陣控制了再這個預設姿勢的多邊形網格中的每個頂點。每個矩陣被賦予了乙個...

iOS檢視3D效果的手勢互動

公司專案中用到的,仿的人家廠子的效果,看起來還是挺高大上的,其實實現起來很簡單,是一種偽3d 用手勢滑動檢視乙個商品的3d展示。在手機上手指左右滑動可以360 無死角檢視這個商品,有興趣的可以下demo執行看一下,雖然很簡單但還是有一些問題的,就當做乙個記錄吧,有時間再深入優化一下。下面看一下 實現...

3D數學 矩陣的更多知識(4)

4d向量和4x4矩陣不過是對3d運算的一種方便的記憶而已。4d齊次空間 4d向量有4個分量,前3個是標準的x,y和z分量,第4個是w,有時稱作齊次座標。為了理解標準3d座標是怎樣擴充套件到4d座標的,讓我們先看一下2d中的齊次座標,它的形式為 x,y,w 想象在3d中w 1處的標準2d平面,實際的2...