原创 OPC_UA到OPC_DA

前言 轉載自OPC_UA到OPC_DA 定義 OPC實時數據訪問規範(OPC DA)定義了包括數據值,更新時間與數據品質信息的相關標準。 OPC歷史數據訪問規範(OPC HDA)定義了查詢、分析歷史數據和含有時標的數據的方法。 O

原创 Unity 3D之自定義SRP(可編程渲染管線)教程2

前言 前述講過隨SRP功能發佈的,還有Unity官方提供的兩種默認渲染管線: LWRP HDRP 那麼,兩個渲染管線與之前的默認管線有什麼區別與聯繫? 同樣是渲染管線,LWRP、HDRP與之前的Build-in RP之間也不是隻有

原创 Unity 3D之實現魚竿模擬

填坑 背景 之前在刷知乎的時候刷到了一篇問題:如何模擬一根魚竿 高贊回答只說了通過UE4和藍圖的一種實現。於是就想着自己通過Unity實現一版。 前言 木杆的彎曲,可以通過力學裏的Cantilever beams(懸臂樑) al

原创 Lua學習筆記1 基礎語法

簡單語法這裏不寫,只做一些比較重要的部分。 1、字符串 字符串的鏈接使用… ,來表示 #“abc” 表示輸出"abc"字符串的長度 “1”+“2”lua會計算出答案,輸出3 2、元表metatable 如果__index是一個表的

原创 Unity Custom Mipmap

基於Github上Unity Custom Mipmap 工程 using System.Collections; using System.Collections.Generic; using UnityEngine; usin

原创 PLC Turtorial 6 OPC_UA Install

在該網頁上找到OPC_UA的functionhttp://www.beckhoff.com.cn/english.asp?download/tc3-download-tf6xxx.htm?id=1957281419487578 這

原创 HLSL之Tessellation筆記1

前言 曲面細分着色器 在unity hdrp中,由於只支持hlsl因此,要實現tessellation的功能,不能與之前shader相同,需要自己手動重寫tessellation,那麼這部分的代碼就主要爲了完成在hlsl中重寫曲面

原创 PLC Tutorial 1 An example

在教程給出的示例工程中,變量區申明的變量 如果帶有%Q或者%I會自動添加在PLC instance中 Q表示這個變量是一個輸出變量,*表示自動分配地址 I表示這個變量是一個輸出入量,*表示自動分配地址 虛擬軸的運動 點擊軸,在

原创 Unity 開發之Lua筆記大綱

前言 我希望能夠記錄自己學習流程,當然更希望的是,如果有人遇到與我類似的問題的時候,能夠很快的在我的博客中看到解決方案。 希望與大家一起討論。 內容簡述 本文主要整理Lua學習過程中的一些筆記的鏈接。 Lua筆記大綱 基礎 Lua

原创 Lua學習筆記2 __index,__newindex

__index表示對元表的訪問,__newindex表示對元表更新 通常lua語言在進行新的鍵賦值的時候,默認情況下是如果沒有找到,那麼就將鍵放在表裏面,暫且不管表中是怎麼實現的,在新的鍵放在裏面之後,就可以對其進行訪問。 然而如

原创 PLC Tutorial 0 install twincat 3

打開Twincat界面,三個主要的項目 1、Twincat項目 2、示波器項目 3、HMI(人機交互)項目 Twincat是一款模塊化的工具,每一個項目都可以作爲主要項目的一個模塊,同時也可以在項目中加入自己的模塊。 模塊中,

原创 Unity 3D之自定義SRP(可編程渲染管線)教程3

自定義渲染管線 前言 本文從內容上是繼承自Unity的官方說明文檔。添加了部分自己對SRP的認識。 最簡單的custom SRP srp的基本組成 srp asset srp asset是srp在編輯器下的一種序列後的資源文件。類

原创 Lua學習筆記3 類的多例

類可以實例化多次,每個實例也有所不同,那麼在LUA中要實現這個就需要做到一個特性:實例化出來的屬性上可以與其他實例不同,同時子類和父類之間可以增加字段和方法。 這個特性在實現上使用元表實現,爲什麼是原表,同時爲什麼基類要放在__i

原创 Unity 3D之自定義SRP(可編程渲染管線)教程 1

前言 SRP是Unity 2018新版提供的功能。基於SRP,Unity也提供了默認的兩種功能:LWRP與HDRP。兩種渲染管線也同時對應了不同設備的需求。 LWRP對應性能較低的設備,比如移動平臺。 HDRP對應性能較高的設備

原创 Unity實現圖形學算法之射線與三角檢測算法

/* //unity中的測試代碼 void Cula(Mesh mesh1,Mesh mesh2) { int[] indexs = mesh1.triangles; Vector3