自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(87)
  • 资源 (5)
  • 问答 (1)
  • 收藏
  • 关注

原创 最全中级Unity面试题(引擎,渲染,Lua等)

打算年底找工作,所以趁着年前整理波面试题。下面是部分内容,更多内容可以通过底部关注我的公众号获取。1.UI的优化方案记录最全面的ugui优化策略_bommy游戏的博客-CSDN博客2.图集的压缩格式3.减少GC的方式Unity优化之GC——合理优化Unity的GC - zblade - 博客园Unity GC垃圾回收机制_小程小程,永不消沉-CSDN博客4.动态批处理与静态批处理相关关于静态批处理/动态批处理/GPU Instancing /SRP Batche.

2021-11-04 18:38:48 12239 3

原创 如何从零学习游戏开发

如何做游戏?从哪里开始学习?找工作需要会哪些东西?我已经工作只想业余时间做游戏该学什么?不知道你是不是和当初的我一样有很多困惑。根据我自身的经验带你去了解如何开始学习游戏开发。 我目前已经 工作2年了,大学时期也是自学编程,自学游戏开发,从而走上了游戏开发这条路,希望这篇文章能帮助到现在的你,少走一些弯路。(写这篇文章的目的是,我现在业余时间比较多,想做个公众号,会定期分享我的学习路线,学习笔记,我们一起进步。PS:本人理科生,文采不好,排版用的也不熟悉,请见谅,我会努力的)。想从...

2020-07-05 18:15:31 22174 19

原创 独立游戏(一) 如何通过广告获取收益

相信大家都知道通过广告获取收益,但是如何获取收益呢,通过哪些平台获取广告源呢。别急看完下面你就懂了。1.首先了解一下广告平台目前国内比较主流的广告平台有:穿山甲,优良汇,快手等。我的游戏只接入了穿山甲,优良汇。2.了解什么是ECPM?ecpm是指千次播放收益,也就是玩家观看一千次广告所产生的的收益。100个人每人看10次,和1000个人每人看一次所产生的收益也是不同的。正常情况下Ecpm会在50~100之间浮动,具体还要看实际情况。3.什么是聚合平台?一般情况下,为了收益最大化,

2022-01-22 18:36:53 6672

原创 详解如何提取Unity素材,源码

目前Unity有两种打包方式:Mono和IL2CPP。两者解压后的文件格式也是不相同的。MONO:IL2CPP:

2020-07-07 21:41:17 9258 2

原创 翻译Shader(7)---渐变贴图

// Upgrade NOTE: replaced '_Object2World' with 'unity_ObjectToWorld'// Upgrade NOTE: replaced 'mul(UNITY_MATRIX_MVP,*)' with 'UnityObjectToClipPos(*)'Shader "BBBBBBBBBB/贴图/03---渐变贴图" { Properties...

2020-05-08 15:15:55 364

原创 翻译Shader(6)---法线贴图(切线空间)

Shader "BBBBBBBBBB/贴图/03---法线贴图" { Properties{ _MainTex("Main Texture",2D) = "white"{}// 纹理贴图 _BaseColor("Base Color",Color) = (1.0,1.0,1.0,1.0)// 控制纹理贴图的颜色 //由于我们本次只计算漫反射,所以只需要_MainTex和_BaseC...

2020-05-07 15:02:47 463

原创 翻译Shader(5)---基本贴图

Shader "BBBBBBBBBB/贴图/01---简单贴图" { Properties{ _MainTex("Main Texture",2D) = "white"{} //增加一个2d纹理类型的输入 _BaseColor("Base Color",Color) = (1.0,1.0,1.0,1.0) } SubShader{ pass { Tags{"Lig...

2020-05-07 11:45:41 274

原创 翻译shader(4)

// Upgrade NOTE: replaced '_World2Object' with 'unity_WorldToObject'// Upgrade NOTE: replaced 'mul(UNITY_MATRIX_MVP,*)' with 'UnityObjectToClipPos(*)'//https://www.cnblogs.com/kanekiken/p/7616700.h...

2020-04-24 15:48:33 368

原创 翻译Shader(2)

// Upgrade NOTE: replaced 'mul(UNITY_MATRIX_MVP,*)' with 'UnityObjectToClipPos(*)'Shader "Unity Shaders Book/Chapter 5/Simple Shader" { Properties { _Color ("Color Tint", Color) = (1, 1, 1, 1) ...

2020-04-23 17:55:11 284

原创 翻译Shader(1)

不想写,,还想学,,只能想出个这种方法来了,参考:https://onevcat.com/2013/07/shader-tutorial-1/Shader "Unity Shaders Book/Chapter 3/Redify" { Properties { _MainTex ("Base (RGB)", 2D) = "white" {} } S...

2020-04-22 16:03:53 320

原创 lua实现定时器

timer_manager = {}timer_manager.__index = timer_managerlocal callback = function() print("this is a callback")endlocal callback1 = function() print("this is a callback1")endlocal callbac...

2020-04-03 14:13:23 3830 5

原创 lua模拟Class

基类Class={x=0,y=0}Class.__index=Class--模拟类的原理就是生成一个table作为元表function Class:new(x,y) local self={} setmetatable(self,Class) self.x=x; self.y=y return selfendfunction Class:...

2020-04-02 17:15:46 416

原创 lua模拟vector

vector= {}vector.__index=vector;--构造函数function vector:new() local o = {} setmetatable(o,vector) o.tempVec = {} return oend--插入元素function vector:push_back(num) table.insert(self.tempVec,n...

2020-04-01 14:00:27 729

原创 编辑器批量改变图片Pivot

using UnityEngine; using System.Collections; using UnityEditor; using System.IO; public class changeTexture{ [MenuItem("Tools/改变图片锚点,手动改Pivot为Custom")] static void Init() ...

2020-02-19 18:06:27 665

原创 图形学笔记2----unityShader基本格式

一.书写格式Shader "learn/MyShader" //shader名称{ Properties //面板上面出现的一些属性需要在这里定义 { //代码里用的名字("面板上现实的名字",类型)= 默认值 m_int("disInt",Int) = 0 m_float("disFloat",Float) = 0 m_rand("disRange",R...

2019-12-22 16:19:04 491 1

原创 图形学笔记1----基本概念

边学边记,现在先看的shader入门精要,书上的内容以及自己的理解,以后会慢慢完善一.渲染管线(渲染流水线)就是一个物体展示到屏幕的整个过程,分为三个阶段:应用阶段,几何阶段,光栅化阶段1.应用阶段这个阶段是准备数据阶段,例如摄像机位置,场景中包含的模型,使用的光源,以及把不可见的物体剔除出去等等。设置每个模型的渲染状态,这些渲染状态包括但不限于使用他的材质。最重要的是渲染所需的几...

2019-12-22 15:26:44 331

转载 针对战棋类六边形的详细剖析

第一眼的感觉,给我打开了新世纪的大门,第二眼的感觉,,这大门不对我开放,,,,最近项目因为策划的需求,目前的寻路算法无法实现,找的过程中发现了这篇帖子,讲的很好,很详细。https://indienova.com/indie-game-development/hex-grids-reference/...

2019-08-17 16:51:04 2066

原创 OpenGl(二)鼠标绘制图形

#include "stdafx.h"#include <glut.h>#define N 1000 //maximum line numbersint ww, hh; // for display window width and heightint line[N][4], k = 0; //for line's endpoint coordinat...

2019-08-07 23:15:46 2221

原创 OpenGl(一)绘制第一个窗口

随着工作的深入,越来越理解到图形学的重要了,,,有必要从零开始学习了,,,,//样本程序My_first_program.cpp#include "stdafx.h"#include <glut.h>void display(void){ glClearColor(0.0f, 0.0f, 0.0f, 1.0f); //设置清屏颜色 glClear(GL_COLOR_...

2019-08-06 23:45:21 373

转载 unity的GC优化,原理及方式

转自http://www.cnblogs.com/zblade/介绍:  在游戏运行的时候,数据主要存储在内存中,当游戏的数据在不需要的时候,存储当前数据的内存就可以被回收以再次使用。内存垃圾是指当前废弃数据所占用的内存,垃圾回收(GC)是指将废弃的内存重新回收再次使用的过程。  Unity中将垃圾回收当作内存管理的一部分,如果游戏中废弃数据占用内存较大,则游戏的性能会受到极大影响,此...

2018-11-15 14:32:02 6265 1

原创 “Hello World”的执行过程(编译过程)

最近看了一下《深入理解计算机系统》这本书,看了几张就觉得打开了一扇新的大门,了解到了更多深入的东西,因此整理一下笔记,顺便加点自己的理解。#include&lt;stdio.h&gt;int main(){ printf("Hellow world");}   程序生命周期是从一个“源文件”开始的,有程序员写到文本并保存,文件名***.c.源程序实际上是由0和1组成的位。这些位8个一组,称...

2018-05-29 17:52:08 3188

原创 (笔记)lua中的元表

元表的功能可以理解为为table进行一些功能的扩展,或者运算符的重载。mytable = {} --表metatable = {} --元表setmetatable(mytable,metatable) --设置metatable是mytable的元表__index元方法如果通过键访问table,但是没有value值时会调用这个方法,table和键作为参数,去执行这个方法。mytable ...

2018-05-18 10:37:59 269

原创 如何计算文件的MD5值

把B文件的MD5值放入到A中存放:using UnityEngine;using System.Collections;using UnityEditor;using System.IO;public class XLuaEditor : MonoBehaviour { [MenuItem("XLua/Create A.txt")] static void Cr...

2018-05-15 15:34:37 6414

原创 unity无法显示阴影的各种解决方案

    很多新手和我一样,经常发现场景中的阴影没了,,,各种检查都没错,但是百密一疏,可能会有个设置没搞好。所以1.首先检查光线是否允许产生阴影:...

2018-05-11 14:25:24 26047

原创 unity光照探针(LightProbeGroup)

  场景中如果光线很丰富的话,通常会把通过lightMap提前烘焙好,把烘焙好的光照的贴图贴到静态物体身上,但是如果这时候场景中出现了一个动态物体怎么办?Unity中的LightProbeGroup。...

2018-05-11 14:09:27 7200

转载 虚函数表解析

C++ 虚函数表解析                                                    原创                                2007年12月18日 22:07:00                                        标签:

2018-04-26 10:08:46 379

转载 简单工厂模式与策略模式区别

原文地址:https://www.cnblogs.com/cxchanpin/p/6770453.html直接上代码:简单工厂模式:------------------------------一个抽象类   --------------------------abstract class AbsClass{    //抽象方法:提供一些列的算法操作    public abstract void ...

2018-04-17 12:31:11 353

转载 运输层

TCP/UDP:TCP提供面向连接的、可靠的数据流传输,而UDP提供的是非面向连接的、不可靠的数据流传输。TCP传输单位称为TCP报文段,UDP传输单位称为用户数据报。TCP注重数据安全性,UDP数据传输快,因为不需要连接等待,少了许多操作,但是其安全性却一般。TCP对应的协议TCP对应的协议:(1) FTP:定义了文件传输协议,使用21端口。(2) Telnet:一种用于远程登陆的端口,使用23...

2018-04-04 12:34:47 350

原创 网络层

网络层网络层向上之提供简单灵活的,无连接的,尽最大努力交付的数据报服务。硬件:路由器,网关网络协议IP三个协议:地址解析协议ARP(MAC/IP,还有个RARP逆向,已经淘汰)网际控制报文协议ICMP网际组管理协议IGMP IP地址:IP地址::={&lt;网络号&gt;,&lt;主机号&gt;} IP地址不仅指明一个主机,还指明了主机所连接到的网络。根据网络主机的多少把IP地址划分为ABC三类,...

2018-04-04 12:22:03 1420

原创 数据链路层

每次面试考到计算机网络的时候都回答的很模糊,印象很清楚不知道如何回答,,,决定从头复习下。常用硬件:网络适配器(网卡)网桥使用信道:点对点信道(PPP):一对一的对点通信方式广播信道:一对多的对点通信方式三个基本问题封装成帧:在每段IP数据报文添加收尾帧界定符区分一个包(SOH,EOT)透明传输:有可能在报文中与帧界定符相同的数据,此时在与界定符相同的数据前插入一个转义字符(ESC),如果接收端接...

2018-04-04 10:55:49 277

原创 (学习笔记)C#与lua互相调用

1.输出lua脚本内容: void Start () { TextAsset ta = Resources.Load&lt;TextAsset&gt;("helloworld.lua"); // 是 helloworld.lua.txt LuaEnv env = new LuaEnv();//最好一个游戏只有一个,它对应lua虚拟机,处于开销考虑 ...

2018-04-03 12:43:01 1821

原创 毕业设计之角色状态机

这两天一直没做多少毕设的东西,只是简单的实现了下fsm状态机,之前只是了解并没有彻底接触过,学习了一下发现并没有想象中那么复杂,于是根据一篇教程自己改动了下。状态机果然好用,把逻辑简化了很多,虽然代码量多了很多。,原贴地址:https://blog.csdn.net/code_sheen/article/details/45869505IState:

2018-03-26 14:34:17 1152

原创 MFC多点触控画板

        为了搭配一个项目,决定做个支持多点的多人画板,之前一直使用winfrom但是不支持多点(微软自己的东西都不支持=.=),于是研究了两天MFC,哇,一比较,简直绝望,感觉使用好费劲,各种不知道问题的报错,但是做了两天还是实现基本功能了(第三天就让我实现更多的功能,于是有研究了两天wpf,简直简单,就是HTML和winform的结合体)。      官方的多点触控是基于单文档的,感谢这...

2018-03-24 17:25:37 1114 4

原创 毕业设计之剧情系统(NPC对话框)

  剧情系统本来打算用插件做的,但是为了巩固下unity决定还是手写,网上看了几个帖子没看出什么效果。我理解的框架就是让游戏逻辑更加清晰,更容易扩展,于是自己想出了一个框架。整体框架如下:    ChatJson(解析json)using System.Collections;using System.Collections.Generic;using UnityEngine;using L...

2018-03-21 11:32:29 4243

原创 毕业设计之背包系统3

鼠标移动到每个slot的物体上肯定会显示当前物品的信息,因此创建一个ToolTip用来显示提示信息,只需要一个image一个text就够了,添加一个ToolTip用来更新信息。ToolClip:      private Text toolTipText; private Text contentText; private CanvasGroup canvasGrou

2018-03-20 15:11:51 1055

原创 毕业设计之背包系统2

做一个装备的预制体,一个image用来显示物体图片,一个image用来显示数字,添加一个ItemUI脚本用来更改信息。itemUI: public Item Item { get; set; } public int Amount { get; set; } private Image itemImage; private Text amountText;

2018-03-20 09:06:01 719

原创 毕业设计之背包系统1

       打算写任务系统,背包系统,战斗系统三部分,但是目前只做过背包系统(跟着siki学的),战斗系统(还不是用FSM写的),决定从背包系统开始,修改下之前的框架。       先做UI:      背包系统是由很多小格子构成,每个格子也就是一个图片,创建一个image,加一个button,把所有格子放到一个空物体下面,为了对小格子进行排序所以要有Grid layout Group组件。gr...

2018-03-19 09:16:10 4921 1

原创 毕业设计之小地图

         小地图的制作比较简单,在主角上再挂一个相机,垂直照射主角,投影设为orthographic,在项目里面创建一个 render texture,拖到相机上,此时相机的内容都在render texturr上面。想要要他显示出来需要UI-&gt;raw image让其显示,拖到上面让其显示。但是此时显示会是正方形,变成圆形有两种方式。          第一种解决方案:创建一个imag...

2018-03-15 17:15:35 1567

原创 毕业设计之NPC头顶信息

NPC头顶信息基本每个游戏都会有,实现方式有很多,想用UGUI的方法实现,但是并没有找到很详细的相关资料,倒是发现很多GUI的例子,但是看需要很多代码,自我感觉没必要这么复杂,于是接着找,所以发现了TextMesh。想问下各位大佬,想知道一般游戏是用什么方式实现这种效果呢(NGUI除外),是用UGUI?还是用各种插件呢?如果用UGUI的话看网上写的是在每个角色下面添加一个Canvas...

2018-03-15 13:41:25 554 3

原创 毕业设计之场景异步加载

决定从一些小部分做起,与游戏整体框架无关的做起。第一个做的就是场景的异步加载了。之前并没有接触过异步加载,都是直接SceneManager.LoadScene(name);对于小场景的话没问题,但是如果场景资源太多就会造成卡顿,所以需要异步加载。      A场景要转换到C场景,则需要一个B场景去过过渡,在B场景等待C的加载,加载完再转换到C场景。 一共需要两个脚本:

2018-03-14 15:54:01 383

整理的几个RPG游戏技能特效

粒子特效,自己做rpg游戏时候整理的,只有七八个,都是精髓。就这么多了。物理攻击与魔法攻击的效果。

2018-04-13

MFC的多点触控双人画图

实现功能有:多点触控,分屏画图,保存图片,更改画笔颜色(一种,可扩展)

2018-03-24

unity+tuio实现触屏demo

unity+tuio协议的多点触控,简单的Demo...........................

2017-11-16

winform画图软件

winform写的仿windows画图软件,铅笔,橡皮,颜色,粗细,存储,打开等基本功能。

2017-10-10

学籍管理系统,成绩管理系统(C#)

数据库课程设计,基于C#的学籍管理系统,稍微改下就可以是其他的管理系统

2017-05-28

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

TA关注的人

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