c++輸出方塊_【Blender】方塊波浪動畫音樂效果

0d536a26096d2fbe2479efd237791f7a.png

先上結果:

85c11dfc36f77e41ed11bfd21ce5cfb5.png
Blender方塊動畫效果https://www.zhihu.com/video/1232333427569262592

老規矩:

bebb80c655a914f036eef9ecea863682.png

2d382077065df69ee53835c41f49f538.png

一、設置基本Wave Mesh(波浪面)

  1. 創建Plane,S 8,這樣寬度就是2*8=16m了。
  2. Ctrl+A/Object菜單->Apply->Apply Scale——作用:歸一化Scale。

4dc95e879dd5f9eaa33755accc5ddc57.png

3.世界大綱中重命名Plane為 "Wave Mesh"波浪網格

e49418cd935c71c3f6597ed311f9e930.png

二、細分Wave Mesh

  1. Tab進入Edit Mode
  2. A選中全部面
  3. 右鍵 Subdivide細分
  4. 將Number of Cuts設置為 30
  5. Tab進入Object Mode
  6. 可以選中模型空格鍵入Shade Smooth,來讓平面變得更加平滑一些。

如果你沒有操作這一步的話,也就是模型沒有細分,這個Plane在第三步中只會上下地進行晃動(所以一定要細分啊)

82c7192754d1aa711bb3b82eb6ac2af5.png

57e6cb31f0ad1ee3ad41eee18804152a.png

三、添加Wave Modifier(長得像Wifi信號)

636f8b06087b27891e0bd833741fd2b5.png
Shift+空格播放動畫
【提示】世界的小方格一個是1m哦

d05a7231ba4450baacda923c57cb2351.png
Size為2m的Plane

提示】最終的模型長寬是【基準的Size*縮放Scale=最終的尺寸Dimensions】(只是提醒一下大家,前面我們已經歸一化Scale了)

如這個就是

  • Size=2m(帶單位)
  • Scale=3(沒有單位,是常量)
  • Dimensions=6m(帶單位)

3655904664293b13f00174c02a5cf2cf.png

【3.1】Wave Constraint參數詳解

  • Speed——搖晃的速度(范圍-1~1、-1~0不晃動、0~1晃動)【Default 0.25】
  • Height——搖晃的高度范圍(范圍-2~2m、負為反方向搖晃)【Default 0.5m】

e52ce8ad0a227dc33f7427a2da01a7a7.png
  • Width——每個波浪谷之間的距離(范圍0~5m)【Default 1.5m】

38dc8a8145cbff6ff4a6810a4f80076f.png
  • Narrowness:狹窄度【默認1.5】

d9cd185ce2f2142dc12278946683b18d.png
4ff919170d99a3ee7e68a1dfb8067c87.png
Blender Wave 動畫https://www.zhihu.com/video/1232048024920596480

51c0cf04600c08cb620459744cb9f5cb.png

四、制作波浪無限循環動畫(無卡幀)

  1. 使用Matcap的法線貼圖
  2. Z切換至 頂視圖,來制作我們的無限循環動畫。(更好地觀察變化效果)

9a7da30d9c52952c6b5cc4426ae89653.png

3.Shift+F12 進入Timeline(如果你沒有的話)

設置起始末尾關鍵幀:

  • 我們可以用快捷鍵P選擇我們的播放范圍
  • 或用Ctrl+C/V復制當前關鍵幀到開始幀或末尾幀
  • 當然你也可以直接輸入開始關鍵幀和結束關鍵幀(我這里是 33~45)

當然如果你看不出來的話,你可以用Snipaste 截屏,并玩一玩 找不同 的游戲。(GZ1)

2480eb916ff2487d895470b24b01c218.png

五、設置方塊的跟隨運動效果

【5.1】添加Cube

【5.2】設置中心樞軸點

  • 進入Edit Mode挪動Cube,GZ1(注意不是Object Mode注意不是Object Mode,注意不是Object Mode,要不然移動的結果是你的Cube的樞軸中心還在體積中心,而不是底面的中心處
  • 或者是在Object Mode下GZ1,然后Object->Set Origin->Origin to 3D Cursor(Origin to Geometry可以切換回來)

22394373fbe4501b0c32310ae2ac8074.png

我們在向游戲引擎當中導入模型的時候經常遇到這樣的問題,旋轉的基準點不對導致旋轉不到位就是樞軸坐標的問題,大家注意一下。

【5.3】添加Shrink Wrap Object Constraint

注意不是Modifer當中的,注意不是Modifer當中的,注意不是Modifer當中的),,兩個界面完全不一樣好嘛,一個是約束器(Constraint),一種是修改器。(Modifier)

1396fc72e8ffc20b6ee81bd7ccbc2969.png
Modifier修改器當中的ShrinkWrap

21d660c9bbacdf6430ff527b59b9e761.png
Constraint控制器當中的Modifier
Shrink Wrap的作用是 移動約束(Constraint)對象的原點并使其移到其目標對象的表面。(就是包裹在一起跟隨父類運動)

相關操作:

  • 選擇父類目標:Wave Mesh
  • Project投影,Z軸
  • S->Shift+Z (在XY軸上縮放我們的Cube)
  • Ctrl+A->Apply Scale(跟上面提到過的Plane一樣)

a416a1ae08213144fd55f97d71d0ee60.png

六、利用Array Modifier 復制成群的Cube。

  1. 添加Array Modifier
  2. 設置Relative offset-X=1.1——以造成一定的間隙
  3. 設置Count數量為我們剛才說過的30
  4. 復制一份Array Modifier
  5. 并將Cube GZ移動到邊緣處。

19a9544201e429c225c587264e7cbbfa.png

這樣弄完我們可以清楚地看到我們的樞軸還有一點小問題(這是一個大Cube的樞軸中心)

7e80cdbee4f0b14f362d9a4b860bb2e7.png

下面我們需要將這些復制化的Cube分割成單塊

a138fb15eea5c08a026ee105a66e3b19.png

七、將Cube分割成單塊

【7.1】Edit Mode選中所有面 Separate By Loose Parts

  1. 進入Edit Mode,A選中所有面
  2. P 分離 By Loose Parts

【7.2】挪動我們的Wave Mesh坐標以產生方塊動畫的效果

  1. Tab退出Edit Mode,進入Object Mode(因為這個是單個的Cube,外面還有好幾百個Cube Object呢,這好幾百個Cube的樞軸中心全部都在這個最邊邊的Cube上,我們需要進行一些改動)
  2. 然后上方 Object->Set Origin->Origin to Geometry

e041eb491f427c8b28d83aabe48dafdc.png

294b9c3743f409e01a271bbc35855906.png

【7.3】挪動我們的Wave Mesh坐標以產生方塊動畫的效果

  1. 切換前視圖,將我們的Wave Mesh 往Z軸上方挪動一些。(GZ1)
  2. 切換頂視圖,挪動Wave Mesh 的XY坐標至這些小方塊組成的大方塊平面中央位置。

可以先看一下效果

10b0ea71455479ce4a7a9d9128e82c71.png
Blender音樂可視化效果[1]https://www.zhihu.com/video/1232278729483276288

3298dcd946ccfea48e6fe0b2a99a6e32.png

八、添加材質并設置Shader藍圖

【8.1】選中任意單個的Cube創建新材質,設置表面為Diffuse顏色貼圖

【8.2】將材質球給到所有的Cube

  1. A 選中所有的Cube
  2. Ctrl+L,將材質球給到所有的Cube

8d715adeb3bf4cb954ca3fc1365e1bef.png

【8.3】進入Shading Panel 設置相關藍圖

  1. Shift F3進入Shading Mode,或者鼠標上方滑動菜單欄可切換(如果你的窗口太小的話)
  2. 填寫下面的相應藍圖(我已經標明得很詳細了,哈哈)

34516b4f60c121c798d8a761ce679203.png

【8.4】挪動相關Wave Mesh 的位置

將場景中的所有模型選中,向下方挪動一點,來跟我們藍圖中的Location.Z相互配合,創建底色。Z進入前視圖,A選中所有模型,向下方移動一點,然后差不多Cube剛好被3D Cursor切分兩半的位置。

1b74648e2f0f65388ace3ca2d06c921d.png

【8.5】調節藍圖中的Multiply值

(適當調節Multiply中的Value值,使達到這種多彩的顏色)

3e6aa822c673ac87e66070c2caf010d9.png

【拓展1】RGB、HSV、HSL、HEX

  1. RGB——是通過對紅(Red)、綠(Green)、藍(B)三個顏色通道的變化以及它們相互之間的疊加來得到各種各樣的顏色的,這個標準幾乎包括了人類視力所能感知的所有顏色,是運用最廣的顏色系統之一,基于笛卡爾坐標系
  2. HSV——色調(Hue),飽和度(Saturation),明度(Value),是根據顏色的直觀特性而創建的,也稱六角錐體模型
  3. HEX(Hexadecimal)十六進制顏色——如#000000表示黑色,#FFFFFF表示白色,(0123456789ABCDEF),我們的網頁端(Cascading Stylesheet,CSS)運用得比較多
  4. HSL——色相(Hue)【顏色名稱】,飽和度(Saturation)【色彩純度,越高越純,低則變灰】,亮度(Lightness)【跟明度一個意思】,將RGB色彩模型中的點在圓柱坐標系中的表示法。

222d4378acad254279375a3a92c0d3b8.png
RGB笛卡爾坐標體系

d7a1a47ece84e2a2d7849ef764c49aea.png
HSV六角錐體系

65b9e64bf38a609948fb143c1bdae502.png
HSL圓柱坐標體系

A選中所有藍圖節點,然后S可以縮放這些節點的大小位置。

【拓展2】材質球隨機顏色制作

6fb129733885f113455030e4ffefeeea.png

注意事項:

  1. RGB(不管是R=1.0還是 G=1.0,B=1.0都可以,因為它的顏色我們在藍圖當中設置是跟隨位置變化的,這里取的就是單個顏色值,主要是RGB這紅綠藍三個顏色,當然你也可以混合設置,設置紅+綠(R=1.0、G=1.0)=黃或者是 綠+藍(G=1.0、B=1.0)=青等等)
  2. 下方輸出結果Color Ramp這里,這里測試的時候使用HSV(六角錐)和HSL(圓錐)是一樣的效果,注意線性插值改為Far,這樣色相(顏色名稱)就會像圓一樣從Hue(0.001~0.009)循環一圈
9b814acdfcc2ce0e13dbba58eb6c868a.png
Blender七彩色運動效果https://www.zhihu.com/video/1232309824987680768

61785b8d350be9851e25ccc1b8ec2fbc.png

九、添加音樂,讓方塊跟著音樂一起運動(加強版)

其實到第八步就可以了,但是感覺少了點什么,對,就是音樂的伴奏。讓我們方塊的高低起伏(高度)跟著音樂一塊走。

Blender當中默認25幀是1s,大家注意一下,你可以在Timeline這里設置(如1500就是60s一分鐘)

10dcf172a928e1aef108f5cc1b12b3b3.png

【9.1】添加音樂

Shift+F8 進入Video Sequencer,添加我們的預覽聲音(音樂)。

cd5b6c6fc70ae84291088505dd688a2f.png

【9.2】我們變化中間方塊的高度有三種方法:

  1. Wave Mesh當中Wave Modifier的 Height高度參數。
  2. 單個Wave Mesh G Z向上移動(方塊就會跟著向上方增高)
  3. 設置所有方塊(Cube)的Location.Z(全選除了Wave Mesh之外)

由于給所有方塊添加關鍵幀比較麻煩,我們這里就給Wave Mesh的單個Height高度參數添加關鍵幀。(第一種方法)

【9.3】給Wave Modifier的Height高度參數添加關鍵

15dd37821050cc257224620f276dd4fc.png

【9.4】烘培音樂曲線

然后Shift+F6(或者十字加號分屏也可以的),烘培音樂曲線。

a96713166353ab8d45a736960faf3a22.png

【9.5】更改其他參數方法

  • 改速度:Wave Mesh 當中的Wave Modifier 的Speed 參數。
  • 改中間區域方塊的顏色:更改藍圖當中Multiply的值Value
  • 變換底盤(四周)的顏色,A全部選中,GZ進行移動

最終結果:

f78dda9b38d28c7919a7809ac9049b69.png
Blender方塊動畫音樂效果https://www.zhihu.com/video/1232332915528245248

另外:我記得虛幻官方好像也有一個這個新聞,我忘了鏈接了,是在Unreal當中用材質球Absolute World Position實現這個效果的。

溫馨小提示:忙了一天了,千萬晚上也不要加班搞了。晚上的效率是極其低下的。昨天寫這個,就因為那個Modifier跟Constraint讓我搞了很長時間,特別不細心,效果出不來,越來越急。晚上還是以娛樂放松為主的,看看書,聽聽歌,彈彈琴這樣不需要太費腦細胞的娛樂活動。大家,注意哦。

制作不易,如果你喜歡本文的話,麻煩您多多點贊。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/537631.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/537631.shtml
英文地址,請注明出處:http://en.pswp.cn/news/537631.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

vue服務端渲染添加緩存

雖然 Vue 的服務器端渲染(SSR)相當快速,但是由于創建組件實例和虛擬 DOM 節點的開銷,無法與純基于字符串拼接(pure string-based)的模板的性能相當。在 SSR 性能至關重要的情況下,明智地利用緩存策略,可以極大改善響應時間并減少服…

Could not autowire. No beans of 'xxxx' type found的錯誤提示

spring 集成mybatis 找不到 beans 查了很多網頁,解決辦法是: 在PersonMapper 上加 Repositorypackage zengmiaogen.csdn.cn.mybatis;import org.apache.ibatis.annotations.Mapper; import org.springframework.stereotype.Repository;import java.ut…

怎么把頁面按比例縮小_做PPT多圖排版千萬別套模板了,按這28種版式來,絕對靠譜!...

編按:各種類型的PPT經常會用到圖片,這些圖片到底如何排版才更出色呢?今天給大家分享一篇PPT圖片排版手冊,主要介紹了多張圖常見的排版方式,希望能幫助到您!嗨,大家好,我是P小白。一張…

spring boot 集成Mybatis時 Invalid bound statement (not found)

spring boot 集成Mybatis時,運行提示 org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): zengmiaogen.csdn.cn.mybatis.PersonMapper.queryPersonList 按照下文的步驟,解決了問題 https://blog.csdn.net/qq_3598128…

Caffe CuDNN版本與環境不同導致make錯誤

1.將./include/caffe/util/cudnn.hpp 換成最新版的caffe里的cudnn的實現,即相應的cudnn.hpp. 2.將./include/caffe/layers里的,所有以cudnn開頭的文件,例如cudnn_conv_layer.hpp,都替換成最新版的caffe里的相應的同名文件。 3.將.…

nodejs 安裝 nrm

nodejs默認源在國外,訪問速度慢。可以手動修改源,但要每次都修改。 安裝 nrm,指定源路徑,不需要每次修改 npm install nrm -g nrm ls * npm -------- https://registry.npmjs.org/ yarn ------- https://registry.yarnpkg.co…

磁盤陣列怎么做_設計與后期制作該怎么選擇筆記本電腦?朋克老師來教你

最近有很多人問我設計與后期制作該怎么選擇筆記本電腦?既然選擇筆記本電腦就說明在相關工作中對電腦有移動需求,比如自媒體、記者、影視后期出組人員等等,那該如何選擇呢?視頻剪輯咱們按工作內容分類聊一聊。第一類,平…

EventBus源碼分析

簡介 前面我學習了如何使用EventBus,還有了解了EventBus的特性,那么接下來我們一起來學習EventBus的源碼,查看EventBus的源碼,看看EventBus給我們帶來什么驚喜以及編程思想。 這個圖我們從一開始就一直放置在上面了。我們在來回顧…

Vue.js 概述與 MVVM 模式

一、Vue.js 1. Vue.js 是什么 Vue.js 是一個輕巧、高性能、可組件化的 MVVM 庫,擁有非常容易上手的 API; Vue.js是一個構建數據驅動的 Web 界面的庫。 2. Vue.js 的特性 1. 輕量級的框架 2. 雙向數據綁定 3. 指令 4. 插件化(組件化&#…

ipad錄屏軟件_如何在 Mac 上優雅的截圖和錄屏

在使用電腦的時候,很多時候我們都需要截屏或者錄屏分享。所以你可能已經聽過 snip,或者經常使用 QQ、微信 等軟件來實現截屏。但是今天我們一起來看一下,怎么使用系統提供的功能,來優雅的實現截圖和錄屏。最開始的這幾篇都比較基礎…

數據庫的輔助工具:My-SqlViewer

閱讀目錄開始My-SqlViewer 使用說明程序安裝及啟動說明程序主界面DataBase瀏覽器搜索數據庫存儲過程的復制比較數據庫今天發一個我自己寫的且經常使用的數據庫的輔助工具:My-SqlViewer由于我比較喜歡使用存儲過程,但發現不管是SQL Server Management Stu…

安卓平板微信和手機微信同時登陸_Mac電腦如何同時登陸多個微信或QQ

現如今,微信和QQ已經不單單是簡單的社交軟件了,也成了工作必備軟件,工作中用它傳個文件,發個通知,不知道有多方便。但是很多人希望將工作圈和生活圈分開,有人想出拿兩部手機的方法,倒是可以&…

VSCode 開發Vue必備插件

工欲善其事,必先利其器 以下就是開發Vue必備插件: Vetur —— 語法高亮、智能感知、Emmet等 包含格式化功能, AltShiftF (格式化全文),CtrlK CtrlF(格式化選中代碼,兩個Ctrl需要同時…

蘋果x人臉識別突然失靈_教你解決mac電腦鍵盤失靈的問題

無論是使用WIN系統還是蘋果電腦都有可能遇到鍵盤失靈,無法使用的問題,那么蘋果電腦鍵盤失靈該怎么解決呢?這里macw小編為大家帶來了蘋果電腦鍵盤失靈解決教程,趕緊收藏起來吧!無線鍵盤失靈解決教程1、確保藍牙已啟用并…

產品文檔如何說清楚產品業務?關注這幾點就夠了

如果產品文檔沒把產品業務說清楚會有什么影響? 常見的:產品不符合業務(實際使用場景),驗收不通過,需要加班修改,調整。產品經理被罵。 嚴重的:甲方爸爸受不了了,換供應…

前端錯誤日志收集方案

前言 公司的項目上線出現問題后難以定位錯誤,研究過現存的錯誤監控方案,受限于特殊條件只能定制自己的錯誤收集方案。 基于以上背景我擼出來一個錯誤日志收集方案 - Ohbug。 歡迎各位大佬 star ~ 監控錯誤 說起錯誤的捕獲,首先想到的是 try c…

spring入門到放棄——spring事務管理

Spring事務提供了兩種管理的的方式:編程式事務和聲明式事務 簡單回顧下事務: 事務:邏輯上的一組操作,組成操作的各個單元,要么全部成功,要么全部失敗。 事務特性: 原子性:一個事務包…

高德百度地圖如何獲取附近小區酒店銀行等?

概述 實現以下功能:根據當前定位,查找附近小區 實現步驟 高德,百度地圖實現方式相同,步驟都是如下: 1.獲取當前位置的經緯度 2.查詢poitype編碼。 (小區,寫字樓,銀行&#xff0…

angular 字符串轉換成數字_Python基礎語法大全:字符串的處理與使用

本文來自牛鷺學院學員:鄧瑞杰字母處理string.capitalize()返回元字符串,且將字符串第一個字母轉為大寫,其它字母小寫string.title()返回元字符串,且將字符串第一個字母轉為大寫,其它字母小寫string.swapcase()用于對字…

Java實現MD5編碼32位

加入依賴包 <dependency><groupId>org.apache.directory.studio</groupId><artifactId>org.apache.commons.codec</artifactId><version>1.8</version></dependency> 實現代碼 DigestUtils.md5Hex(字符串)