自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

LudoArtificis的成长之路

一个在校大学生学习游戏制作的记录

  • 博客(50)
  • 收藏
  • 关注

原创 【UNET自学日志】Part1 UNET的设置与运动同步

以一个FPS游戏为例1、新建一个Plane作为游戏场景内的地板。2、导入Character包,在场景中添加FirstPersonCharacter中的Prefabs——FPSController,并重命名为Player。3、在Player中添加一个Capsule子物体作为玩家模型,将此Player保存为一个新的Prefab。4、在场景中新建一个空物体,重命名为NetworkMana

2016-03-23 14:25:46 7151 24

原创 【Python自学笔记】EX33 While Loops

ex32 Loop and Lists示例代码i = 0numbers = []while i < 6: print(f"At the top i is {i}") numbers.append(i) i = i + 1 print("Numbers now: ", numbers) print(f"At the bottom i is {...

2019-06-13 22:02:15 235

原创 【Python自学笔记】EX32 循环和list

【Python自学笔记】EX32 循环和listex32 Loop and Lists示例代码一些思考ex32 Loop and Lists示例代码the_count = [1, 2, 3, 4, 5]fruits = ['apples', 'oranges', 'pears', 'apricots']change = [1, 'pennies', 2, 'dimes', 3, 'qua...

2019-06-12 22:09:23 213

原创 Logistic Regression with a Neural Network mindset

Logistic Regression with a Neural Network mindset1 导入所需的包2 数据预处理2.2 识别数据集的大小和形状2.3 重塑一些数据的形状2.4 “标准化”数据3 学习算法的一般体系结构4 构建Logistic Regression算法的各个部分4.1 sigmoid函数4.2 初始化参数4.3 前向传播和反向传播过程4.4 优化4.5 预测5 将所有...

2019-02-22 15:41:26 951 1

原创 cocos creator学习之JavaScript的字典实现办法

function add(key, value){ // 添加字典的键值(key:value) this.dataStore[key] = value;}function show(){ //显示字典中的键值(key:value) for(var key in this.dataStore){ console.log(key + " ...

2018-11-05 22:24:44 2361

原创 【UnityShader自学日志】线框自发光着色器

1、新建一个无光照着色器(Unlit Shader),重命名为“Unlit_wire”2、修改其代码如下Shader "PACKT/unlit_wireframe1" { Properties { //线框着色器所需要的三个属性 _Color("Color", Color) = (0,0,0,0) //模型的颜色 _EdgeColor("Edge Color", Col...

2018-10-14 20:57:48 2448 1

原创 【UnityShader自学日志】星球大气效果

1、创建一个“Planet”着色器2、在Properties代码块中删除_Metallic和_Glossiness所在的两行,在surf函数中删除Glossiness和Metallic所在的两行(因为大气着色器不需要金属光泽和平滑度两个材质属性)3、为大气着色器添加厚度、颜色和不透明度三个属性     在Properties代码块中添加下面两行        _Thickness ...

2018-09-22 17:47:57 1523

原创 【UnityShader自学日志】透明着色器(透明头盔效果)

新建一个Standard Surface Shader,将其命名为Glass1、打开Glass,将其名称改为"PACKT/Glass"2、在Subshader下面,找到Tags一行,将Opaque改为Transparent(即从“不透明”改为“透明”)3、找到着色器的编译指令代码#pragma surface surf Standard fullforwardshadows,并在其后面...

2018-09-22 16:32:37 1150

原创 【UnityShader自学日志】创建自定义着色器

在“Asset”中,创建一个新的Standard Surface Shader,在mono或者VS中打开,将原有的代码段全部删除加入以下代码,每行代码具体功能如下所示Shader "PACKT/Moon" //指定了该着色器在着色器选单中的名称{ //着色器的属性区 Properties { _Color ("Color", Color) = (1,1,1,1)//设置着色...

2018-09-22 12:20:19 1742

原创 第六章 分支语句和逻辑运算符

1、#include &lt;iostream&gt;#include &lt;cctype&gt;using namespace std;/*1、读取键盘输入,遇到@符号为止2、回显输入(数字除外)3、将大写改为小写,小写改为大写*/int main(){ char c[100]; int n = 0; while (cin &gt;&gt; c[n]) { ...

2018-09-03 09:37:48 186

原创 第七章 函数——C++的编程模块

1、#include &lt;iostream&gt;using namespace std;double HarmonicMean(const double &amp;x, const double &amp;y);int main(){ double x, y; cin &gt;&gt; x &gt;&gt; y; //输入两个数,直到其中一个为0结束程序 while...

2018-09-01 19:55:40 284

原创 第八章 函数探幽

2、#include &lt;iostream&gt;using namespace std;struct CandyBar{ char *name; double weight; int hot;};void Set(CandyBar &amp;candy, const char *c = "Milennium Munch", const double &amp;w =...

2018-08-31 17:26:16 136

原创 【Python自学笔记】EX28-EX31 python判断语句

# ex28 布尔运算的练习print(1, True and True)print(2, False and True)print(3, 1 == 1 and 2 == 1)print(4, "test" == "test")print(5, 1 == 1 and 2 != 1)print(6, True and 1 == 1)print(7, False and 0 != ...

2018-08-26 07:48:04 184

原创 【Python自学笔记】EX24-EX25 对前面部分的总结与练习

# ex24 更多的练习print("Let's practice everything.")# python的输出,转义字符的运用print('You\'d need to know \'bout escapes with \\ that do:') # You'd need to know 'bout escapes with \ that do:print('\n newline...

2018-08-24 12:34:38 271 4

原创 【Python自学笔记】EX18-EX21 python的函数

# ex18# 定义与使用函数def print_two(*args): # 定义格式 def 函数名(参数名) arg1, arg2 = args print(f"arg1: {arg1}, arg2: {arg2}")def print_two_agagin(arg1, arg2):# 此函数方法与上个函数一致 print(f"arg1: {arg1}, ar...

2018-08-24 09:18:26 3479

原创 【Python自学笔记】EX15-EX17 对文件的操作

# ex15# 打开文件并读取文件内容from sys import argvscript, filename = argvtxt = open(filename) # 根据文件名打开文件print(f"Here's your file {filename}:")print(txt.read()) # 读取该文件中的文本并输出print("Type the filename ...

2018-08-22 10:14:35 194

原创 【Python自学笔记】EX11-EX14 用户的输入

# ex11# 获取输入input()# 用end=' '来告诉print函数,不要以换行符作为结尾开始新的一行print("How old are you?", end=' ')age = input()print("How tall are you?", end=' ')tall = input()print("How much do you weight?", end=' ...

2018-08-22 09:28:41 178

原创 【Python自学笔记】EX1-EX10 python的输出等

 # ex1 直接输出字符串,用print函数# ex2 python的注释用“#”print("Hello World") # 可以注意到python不加分号结尾# ex3 python的数字和数学计算# python的数字变量也无需考虑类型,为保证精确度,在计算除法时,python似乎会把整型相除的结果输出为浮点型# 而其他的运算则根据变量的类型来决定a = 10b ...

2018-08-21 22:16:16 353

转载 WampServer中MySQL中文乱码解决

转载自:http://www.cnblogs.com/yanyuqing/p/5830468.html1、修改mysql的my.ini文件:在 [client] 下面增加default-character-set=utf8 在 [mysqld] 下面增加:character_set_server=utf8 2、创建数据库:

2017-04-03 19:40:10 872

原创 Unity中国象棋(五)——网络对战的实现(服务端的基本功能)

博主主要是用了socket的方法去实现了服务器和客户端之间的通信,由于楼主对于socket网络编程这一方面的基础相当薄弱,故也是边学边学,有些地方的代码不够完善还请大神指正!博主还需学习。首先,先说说服务端方面:服务端采用的是VS的windows form窗体应用程序做的,也是为了方便查看吧。

2017-02-26 19:35:04 3441

转载 Unity 延迟执行一段代码的实现比较好的方式

原文 :http://www.cnblogs.com/Unity3Dqishituan/p/4048672.html在Unity中,延时执行一段代码或者一个方法或者几个方法的情况非常普遍。一般会用到Invoke和InvokeRepeating方法。顾名思义,第一个是执行一次,第二个是重复执行。看下定义:void Invoke(string methodName,

2017-02-12 19:26:28 2370

原创 Unity中国象棋(四)——悔棋、判断胜负的实现,以及动画特效和代码的优化

悔棋功能的实现:基本思路就是创建一个List,保存每一步所移动的棋子ID,移动前的位置A的坐标,移动后的位置B的坐标,以及吃掉的棋子的ID(若没有吃掉棋子则ID为-1)附上相关代码:结构体的List public struct step { public int moveId; public int killId; publ

2017-02-06 17:53:54 3893 6

原创 Unity中国象棋(三)——各类棋子规则

首先,新建一个RuleManager脚本,写下各类棋子的走棋规则,先贴上脚本public class RuleManager : MonoBehaviour{ /// /// 将的走棋规则 /// /// public static bool moveJiang(int selectedId, int row, int col, int

2017-02-05 21:22:17 3416 16

原创 Unity中国象棋(二)——走棋

在新弄一个选框的Sprite当作一个新的预制体,新建GameManager脚本,控制象棋的走棋Update函数主要逻辑:当鼠标点击时触发1、若没有被选中的棋子,则判断此次点击的是否是棋子,若是,则选中它;2、若有被选中的棋子,则判断此次点击的是否是棋子,若是,扔掉当前位置上的棋子,并将选中的棋子移动到当前位置;若不是,则移动选中的棋子到当前位置。取消选中;using Unity

2017-01-31 19:44:40 5589 4

原创 Unity中国象棋(一)——初始化棋子

新建一个plane,作为背景,新建一个StoneManager脚本,挂在plane上初始化32个棋子,每个棋子自带6个属性值:ID,x轴的坐标位置,y轴的坐标位置,是否为红子,是否死亡,棋子的类型。通过结构体Stone实现;由于每个棋子的位置、类型难以通过ID区分,并且棋子的数量较少,故直接用结构体StonePos将其一一赋值;利用其ID(也可利用其是否为红子的属性)和其类型,

2017-01-27 21:49:38 7078 5

原创 万能游戏框架(一)——设计模式之工厂模式

设计模式1. 工厂模式:所有的对象的创造,都有一个对象去创造1.一个简单的工厂模式的例子public class Food{ public virtual void ShowMe() { }}public class TomatoFood:Food{ public override void ShowMe()

2017-01-10 00:17:07 3300 2

原创 【UNET自学日志】Part20 UI

说在前面,通过这部分我似乎看到了可以实现互联网的希望啦!废话不多说,我们开始进入正题首先在Menu场景下新建一些UI元素,两个button(ButtonStartHost和ButtonJoinGame),一个inputfield(InputFieldIPAddress),将InputFieldIPAddress下的子物体Text中的文本改为localhost;在Main场景下新建一个but

2016-05-07 19:23:14 2910 16

原创 【UNET自学日志】Part19 第一次尝试匹配系统

写在开头,需要说清楚的是,这个匹配系统是指一个玩家,可以创建一个自己随意命名的房间,然后其他玩家可以通过联网去搜索房间,然后加入房间一起游戏我先讲讲怎么使用这个匹配系统:在运行游戏后,因为添加了Network Manager HUD组件,所以有系统自带的UI界面,如何进行匹配呢?点击最下方的Enable Match Maker按钮,有一个可以输入的文本框,前面的laber写着"

2016-05-05 16:32:07 2330

原创 【UNET自学日志】Part18 修复一些错误

首先,我们需要的是新建一个空物体“SpawnManager”,将GameManager中的SpawnManaer_ZombieSpawner拖到SpawnManager中,并移除GameManager中的NetworkIdentity,SpawnManager中添加NetworkIdentity,并勾选Server Only选项第二,打开最开始的脚本Player_NetworkSetu

2016-05-04 08:42:48 1125

原创 【UNET自学日志】Part 17 更好的重生

新建一个tag “ZombieSpawn”,将物体ZombieSpawn添加这个tag,然后多复制几个放在不同的位置上打开之前的脚本GameManaer_ZombieSpawnerusing UnityEngine;using System.Collections;using UnityEngine.Networking;public class GameManaer_Zombie

2016-05-03 14:09:39 829

原创 在Unity中StartCoroutine/yield return这个模式到底是怎么应用的?其中的原理是什么?

因为之前在UNET自学日志中多次使用到过,博主自己也不是非常清楚其中的原理到底是怎么样的,所以这里推荐几篇不错的文章,相信会对其中的机制有更好的理解Unity3D中的Coroutine详解:http://blog.csdn.net/blues1021/article/details/40959915?utm_source=tuicool&utm_medium=referralCorou

2016-04-29 20:20:08 703

原创 【UNET自学日志】Part15 僵尸攻击玩家

在Zombie_Target脚本中,将targetTransform改为publicpublic Transform targetTransform;在预制件Zombie中添加新的脚本Zombie_Attackusing UnityEngine;using System.Collections;using UnityEngine.Networking;public class

2016-04-29 16:58:28 838 2

原创 【UNET自学日志】Part14 射击那些僵尸

射击僵尸和射击玩家(Part9 造成伤害)也是同样的道理,不再赘述新建脚本Zombie_Health添加到Zombie的预制件上using UnityEngine;using System.Collections;using UnityEngine.Networking;public class Zombie_Health : NetworkBehaviour { pri

2016-04-28 14:45:19 747

原创 【UNET自学日志】Part 13 僵尸的ID

我们给僵尸设置ID的思路和在Part7讲的一样,老样子直接上代码新建脚本Zombie_IDusing UnityEngine;using System.Collections;using UnityEngine.Networking;public class Zombie_ID : NetworkBehaviour { [SyncVar]public string zom

2016-04-28 14:04:24 1012 1

原创 【UNET自学日志】Part12 僵尸

随意的新建一个物体来当僵尸,记得和平时游戏添加的敌人一样,加上NavMeshAgent组件来追踪玩家在zombie上添加NetworkIdentity和NetworkTransform,新建脚本Zombie_Target添加到Zombie上,将Zombie作为一个新的Prefabusing UnityEngine;using System.Collections;using Unity

2016-04-26 09:03:46 757 1

原创 【UNET自学日志】Part11 玩家复活

上一部分玩家摧毁的方法是设置其enable为false,那么玩家的复活就是在玩家死后,显示复活的按钮,点击按钮后把相关的enable再次设置为true即可新建脚本Player_Respawnusing UnityEngine;using System.Collections;using UnityEngine.Networking;using UnityEngine.UI;p

2016-04-23 21:06:27 1246 5

原创 【UNET自学日志】Part10 摧毁玩家

上一个部分做了玩家的射击造成的伤害,但是玩家生命值为负的时候玩家还在游戏场景上,这个部分我们将要把生命值为0以下的玩家摧毁掉主要的思路就是当玩家的生命值小于或等于0的时候,将玩家的控制和渲染都设置为不可用即可将Player_Health脚本做下修改using UnityEngine;using System.Collections;using UnityEngine.Network

2016-04-22 11:43:54 1049 3

原创 【UNET自学日志】Part9 造成伤害

上一部分我们做的是射击的部分,说到射击,肯定和伤害有关,当Player1击中Player2的时候,将会造成Player2生命值的减少本部分也较为容易,我们需要一个新的脚本Player_Health,另外,我们需要对上一次做的Player_Shoot脚本留下的东西做完using UnityEngine;using System.Collections;using UnityEngine.

2016-04-21 12:35:20 810

原创 【UNET自学日志】Part8 射击

也是蛮简单的一部分,直接上代码using UnityEngine;using System.Collections;using UnityEngine.Networking;public class Player_Shoot : NetworkBehaviour { private float damage = 25; private float range = 20

2016-04-20 10:08:02 917 3

原创 【UNET自学日志】Part7 独一无二的ID

在开始联机的时候,每一个Player 的名字都是Player(Clone),在这部分中我们需要把Player 的名字改成独一无二的标识符新建一个脚本Player_IDusing UnityEngine;using System.Collections;using UnityEngine.Networking;public class Player_ID : NetworkBeh

2016-04-20 09:44:10 1504 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除