Unity如何實現在球表面移動並朝向一目標點(一)
在朝向問題經檢驗有些BUG,在下一章會詳細闡述並修改!!見諒using System.Collections; using System.Collections.Generic; using UnityEngine; public class MoveOnSphere : MonoBehaviour { public GameObject sphere; public GameObject target; // Use this for initialization void Start () { if (sphere == null) { Debug.Log("球為空"); return; } } // Update is called once per frame void Update () { if (Input.GetMouseButton(0)) { Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition); RaycastHit hit; if (Physics.Raycast(ray, out hit, 1000, 1 << 8))//8層,球的層級 { //膠囊體在一個父級空物件下 transform.parent.position = hit.point; //計算球上一點的法線向量 Vector3 normal = transform.position-sphere.transform.position; //球心到目標點的向量 Vector3 SphereToTarget = target.transform.position - sphere.transform.position; //計算次法線的向量(即與切線和法線所在平面垂直的向量) Vector3 binormal = Vector3.Cross(normal,SphereToTarget).normalized; //計算出指向目標物的切線向量 Vector3 tangent = Vector3.Cross(binormal,normal); //計算父級的前方向和目標切線的角度 float angle = Vector3.Angle(transform.parent.forward,tangent); //膠囊體旋轉相反的角度對準目標物體 transform.localEulerAngles = new Vector3(0,-angle,0); //將UP向量朝向法線 transform.parent.up = normal; } } } }
相關推薦
Unity如何實現在球表面移動並朝向一目標點(一)
程式碼如下:using System.Collections; using System.Collections.Generic; using UnityEngine; public class MoveOnSphere : MonoBehaviour { public GameObject sph
用Unity實現AR類爐石傳說遊戲——開發框架(一)
遊戲流程圖 玩家類 每場對戰中有兩個玩家例項 每個玩家擁有: 卡組 牌庫 手牌 場上的英雄 生命值,能量值等屬性 卡組 vector作為容器儲存 vector<Card> CardsCombination; 由
找到第一個只出現一次的字符並返回它的位置(Python)
出現一次 ret {} baby find highlight int images 返回 s = ‘hellobaby‘ def findchar(s): for i in s: if s.count(i)==1:
java線程與並發編程實踐(一)
tee start new read 它的 static ctrl+ als 函數 一、給出線程的定義 線程就是一條在程序代碼中獨立執行的路徑二、給出runnable的定義 一個runnable就是一段封裝在對象中的代碼序列,它的類實現了runnable接口三、
使用XStream解析復雜XML並插入數據庫(一)
針對 很多 trac ota print root parser 沒有 jdbc 環境: Springboot+mysql 我只想說jpa真的超級好用,準備深入研究一下~ 導入依賴: <dependency> <groupId>org.proj
Java並發AQS原理分析(一)
jpg 子類 ole success ces || pro 同步 無法 我們說的AQS就是AbstractQueuedSynchronizer,他在java.util.concurrent.locks包下,這個類是Java並發的一個核心類。第一次知道有這個類是在看可重入鎖R
Appium+python移動端自動化測試-環境搭建(一)
過程 .com oid pytho 安裝環境 測試 ID alt ppi 搭建所在系統環境:Windows7版本64位系統 一、環境準備 jdk8.0.151 android-sdk_r20.3.4-windows python3.5 appium1.4.16
linux學習之多高並發服務器篇(一)
多線程 同步 https 進程調度 creat server side lis logs 高並發服務器 高並發服務器 並發服務器開發 1.多進程並發服務器 使用多進程並發服務器時要考慮以下幾點: 父最大文件描述個數(父進程中需要close關閉accept返回的新文件
Unity實現通用的物體高亮閃爍的方法(輪廓或整體高亮閃爍)
一、匯入DoTween或DoTweenPro外掛到專案中 二、編寫一個控制物體輪廓高亮閃爍的指令碼,如下圖所示: using System.Collections; using System.Collections.Generic; using UnityEngine
Python-資料結構與演算法(十一、字典(對映)——基於兩種不同的底層實現)
保證一週更兩篇吧,以此來督促自己好好的學習!程式碼的很多地方我都給予了詳細的解釋,幫助理解。好了,幹就完了~加油! 宣告:本python資料結構與演算法是imooc上liuyubobobo老師java資料結構的python改寫,並添加了一些自己的理解和新的東西,liuyubobobo
Unity 實用教程之 移動端PC端區分點選在UI非UI
Unity 實用教程之 移動端PC端區分點選在UI非UI。本節介紹,在Unity開發中,滑鼠點選的時UI還是不是UI,而且還區分移動端和電腦端情況,具體如下圖 工具/原料 Unity 方法/步驟 1 在Unity引擎上新建一個空工程,具體如下圖
opencv讀取影象畫素值讀取並儲存到txt檔案(一)RGB
#include “stdafx.h” #include"cv.h" #include <stdlib.h> #include <stdio.h> #include <math.h> #include #include #include “iost
Idea建立maven web專案,並使用tomcat外掛執行(一)
前言: 從eclipse轉idea是中遇到了很多問題,折騰了很久最終才勉強完成基本專案結構的搭建,部落格一篇以為總結! 一:建立專案 (1)點選建立專案 (2)選擇maven (3)填寫專案
Android配置build.gradle實現Version Code編譯release包時自動增長(一)
Android配置build.gradle實現Version Code編譯release包時自動增長(一) 經常的,開發者在上線釋出之前要打出很多測試包給測試團隊測試,每次打出的release包為了區分不同的版本號,需要手動的修改Android裡面的配置檔案build.gradle的vers
【 MATLAB 】MATLAB 實現模擬訊號取樣後的重建(三)一階保持(FOH)內插
這篇博文我們使用一階保持(FOH)內插來重建訊號,採用的案例依然是上篇博文中的案例: 模擬訊號: 對該訊號使用兩種不同的取樣頻率取樣。 a. 在 fs = 5000 對訊號進行取樣 b.
移動 WEB 通用優化策略介紹(一)
提醒:本文最後更新於 949 天前,文中所描述的資訊可能已發生改變,請謹慎使用。 藉助客戶端所做的優化,如現在廣為流行的移動端 Webview 容器加速方案,優化效果侷限在指定 APP 內,甚至還會導致使用通用瀏覽器訪問速度更慢(這個話題很有意思,有機會以後再討論)。 現在過去快半年,我終於想
Spark中元件Mllib的學習11之使用ALS對movieLens中一百萬條(1M)資料集進行訓練,並對輸入的新使用者資料進行電影推薦
1解釋 spark-1.5.2 資料集:http://grouplens.org/datasets/movielens/ 一百萬條(1M) 資料劃分: 將樣本評分表以key值切分成3個部分,分別用於訓練 (60%,並加入使用者評分), 校驗 (20
手把手教你如何用objection detection API實現實時目標檢測(一)
本系列文章共分為三篇,包括環境配置、對影象的目標檢測和利用攝像頭實現實時檢測三個部分,本文主要介紹相關的環境配置部分。 step1:準備相關檔案 在這裡我們使用的是GPU版本的TensorFlow,因此在此之前我們需要下載所需要的相關資料。主要有如下幾部分: CUDA9.
Jenkins實現測試環境到生產環境一鍵部署(Windows)
前言: 因為dotnet在釋出站點後,然後再上傳服務時,會因為各種的網速問題,導致站點瞬間掛掉!那麼通過一鍵部署,先在測試站點測試好的檔案,複製到正式站點上的一個緩衝區,進行預熱配置,之後再本機進行檔案替換,速度是相當的快,最終把影響降到最低。 所用到的外掛: 注意:此外掛很久沒有更新,一次只能是一個目錄
IOS幾種常見的實現掃描、生成二維碼的方式(一、使用ZBar SDK)
最近專案中使用到掃描二維碼的功能,要求還蠻多的,包括介面的定製,掃描靈敏度,使用的穩定性等等。於是,研究總結了一下IOS中幾種掃描二維碼的實現方式。 基本上我們的實現方法有三大途徑:ZBar、ZXing、AVFoundation。在 iOS7