自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

勇于尝试,却要三思后行。

喜欢编程,喜欢做游戏的小小大学猿。   https://git.oschina.net/

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

原创 VS 2013 编译Lua源码,并与C++ 进行简单交互

1.http://www.lua.org/  下载Lua源代码2.需要编译的源码主要分3个部分,Lua 解析器,Lua静态库,Lua 编译器,如果是与C++ 交互,那只需要编译Lua静态库,配上环境就可以进行交互了编译Lua 静态库 (生成lua.lib)    1.新建控制台项目,勾选空项目,静态库。    2.导入源码中的全部.h 头文件,导入源码的

2017-07-17 11:18:54 1302

转载 Screen 操作快捷键

使用telnet或SSH远程登录linux时,如果连接非正常中断,重新连接时,系统将开一个新的session,无法恢复原来的 session.screen命令可以解决这个问题。Screen工具是一个终端多路转接器,在本质上,这意味着你能够使用一个单一的终端窗口运行多终端的应用。screen命令介绍 1. $:screen  创建一个screen(可以用screen -S ID,打开一个

2017-07-11 18:58:45 944

原创 Unity优化的几点

drawcall原理drawCall实际上就是一个命令,是Cpu想Gpu发起的渲染命令。 所以优化drawcall的数目,实际上就要减少cpu对gpu发起的渲染命令,举个例子,如果我们要渲染一千个三角形,把他们按一个单独的网格进行渲染所花费的时间要远大于渲染一个包含了一千个三角面的网格,而主要的问题就是在CPU块,调用了太多次的drawcall,Gpu可能并没有太大的差别。批处理动态批处理如果一

2017-04-24 13:05:41 378

原创 LeetCode 8 8. String to Integer (atoi)

RT string转 int 题目 https://leetcode.com/problems/string-to-integer-atoi/#/descriptionchar 转 int 是 根据 ascii码, 数字从 48开始思路是 先从字符串中 获取合法的 数字串 1.去除前后空格 2.判断第一个字符是否为 + - 来判断正负 3.最后计算的时候,还要注意边界 In

2017-04-15 09:57:28 228

原创 Ugui RenderMode 使用注意

今天在 使用 Ugui 的接口 IDragHandler 拖拽物体的发现一个严重的问题~~ 如果Canvas 的RenderMode为OverLab的时候,可以轻松的使用 this.transform.position = eventdata.position;去拖拽。。一切都正常,物体会跟随鼠标移动但是当Ugui RenderMode为Camera的时候如果继续这样用的话你会发现 anc

2017-02-23 16:35:03 1081

原创 使用protobuf-net 进行协议的序列化

1.新建控制台项目,通过Nuget 加载Protobuf-netusing protobuf_序列化学习.model;using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using System.IO;using Pr

2017-02-19 22:31:10 1852

原创 使用python 还原plist 图集

参考大部分 博客配好了 python 2.7环境,以及 pillow的库(Python的 图片库)代码稍作了修改,主要是创建文件的部分,因为Plist里面的原图片可能是多级目录,而非一级目录以下大部分为转,除了代码部分稍作修改工具原料Python 2.7 安装环境1、安装 Python 2.7 https://www.python.org/d

2017-02-08 16:16:25 3705

转载 轻量级ORM框架——第二篇:Dapper中的一些复杂操作和inner join应该注意的坑

Dapper使用 转

2017-02-06 14:23:48 559

转载 轻量级ORM框架——第一篇:Dapper快速学习

Dapper使用 转

2017-02-06 14:22:13 2406

原创 Easy Check Fps hit

通过简单的直线相交,判定玩家是否射击打中了敌人,在类似的射击游戏的碰撞检测中没有必要用到物理引擎,就可以通过这种方式判断是否击中的队友。以下代码来源 smart fox server Fps Demo// Checking if the player hits enemy using simple line intersection and // the known players p

2017-02-04 09:43:56 496

原创 用Web api /Nancy 通过Owin Self Host简易实现一个 Http 服务器

过去做 端游的Http 服务器 用的WebApi 或者Mvc架构,都是放在iis。。。而我已经是懒出一个地步,并不想去配iis,或者去管理iis,所以我很喜欢 Self host 的启动方式。C#做 http 有2个轻量级的框架, 一个是Nancy ,一个是 微软官方的Web Api 都可以通过owin self host 在应用程序中启动监听Web Api官方教程 :https://www.asp

2017-02-03 11:13:09 10666 1

转载 C#反射机制详解

反射的定义:审查元数据并收集关於它的类型信息的能力,元数据(编辑后的基本数据单元)就是一大堆表,编译器会创建一个类定义表,一个字段定义表,一个方法定义表等,System.Reflection命名空间包含的几个类,允许你反射(解析)这些元数据的代码一、反射的作用:动态的创建类型的实例,将类型邦定到现有对象,或从现有对象中获取类型 应用程序需要在运行时从某个特定的程序集中载入一个特定的类型,以

2017-02-02 20:48:49 338

转载 C# AppDomain 详解

Appdomain基本概念 以及使用,转载

2017-02-02 18:23:56 21693

原创 游戏设计模式 游戏循环

游戏循环游戏循环在游戏开发中至关重要,虽然说有游戏引擎,或者一些列框架下无需让我们自己亲手写,但是还是有必要了解一下游戏中的循环,譬如某天你用安卓的surfaceview,去写游戏,又话说直接从openGL底层开始写起,那游戏循环的设计就必不可少了。设计一个简单的游戏循环while(true){ double start = getCurrentTime(); processInp

2017-01-28 14:24:41 1072

原创 Ugui 实现简易版的Joystick

使用Ugui 写少量的代码完成一个实用的Joystick

2017-01-23 22:36:45 377

转载 我的服务端之AOI概述

AOI(Area Of Interest),中文就是感兴趣区域。通俗一点说,感兴趣区域就是玩家在场景实时看到的区域;也就是AOI会随着英雄的移动改变而改变。一般在游戏的中,游戏的世界都是由各种场景组成,场景中有着各种各样的Obj(英雄、怪物、NPC和掉落物品等等)。当英雄在移动的时候,玩家需要看到其它在自己视野内玩家的英雄;需要看到在自己视野内的怪物;需要看到打BOSS掉落的物品;……。有

2017-01-21 15:34:23 2548

转载 射线与平面的相交检测(Ray-Plane intersection test)

射线的定义在欧几里德几何中,射线的定义是:直线上一点和它一旁的部分。由此可知,射线有两个性质,一是只有一个端点,二是一端无限延伸。射线的参数方程其中p0是射线的起点, u是射线的方向向量,t >= 0,根据t的取值不同,可得射线上不同的点,所有这些点便构成了整个射线,如图平面的定义平面可以由法向量和平面内的一点来确定,因为过一点,有且只有一个平面与已知直线垂直平

2016-11-16 15:21:38 2025

原创 OpenGL ES 简单的物理检测AABBBOX

首先讲一下AABB BOX的缺陷,AABB BOX 是以正方形的包围盒为基准,包围的范围 即是 一个模型的所有顶点中 x y z 最大值,最小值 ,所以在一个旋转后的物体,可能偏差会比较大,因为AABB BOX 只能计算平行的 碰撞检测这是一个吧AABBOX 画出现况来的实践,可以明显看出,AABB BOX,永远都是平行的,因为这是简单的判断,碰撞的检测也十分粗略。

2016-11-08 10:13:50 729

转载 JAVA 事件机制(转)

java事件机制包括三个部分:事件、事件监听器、事件源。 1、事件。一般继承自java.util.EventObject类,封装了事件源对象及跟事件相关的信息。com.javaedu.event.CusEvent类Java代码  package com.javaedu.event;    import java.util.EventObj

2016-10-30 11:27:09 213

原创 C# 委托详解(一)

委托(delegate) 是 c/c++ 函数指针的 "升级版"1.委托(Action,Func)2.自定义委托(delegate TResult Func(T1 arg1, T2 arg2);)3.多播委托 ( 对一个委托进行 多个函数的封装 并且 使用invoke调用 )4.多线程(异步)委托 (Thread ,Task,BeginI

2016-10-30 11:26:05 837 1

原创 OpenGL ES 简单光照学习

参考书籍 OpenGL ES 2.0 游戏开发 上卷材质的放射系数,在这里既是物体原本的颜色环境光 P158    环境光照射结果 = 材质的反射系数 * 环境光强度散射光 p160    散射光照结果 = 材质的反射系数 * 散射光强度 * Max(cos(入射角),0)   注意: 入射角 a*b = |a||b| *

2016-10-30 11:16:49 383

原创 Open GL es 2.0 简单加载Obj格式的模型文件

加载Obj 文件首先需要了解Obj 文件的格式  “#” 号开头的行为注释,在程序加载的过程中可以省略  “v” 号开头的为存放顶点的坐标,其后面的3个数值分别表示一个顶点的x,y,z 坐标。   "vt"开头的用于存放顶点纹理坐标,其后面的3个数值分别表示纹理坐标的S,T,W    "vn" 开头的用于存放法向量,其后面的3个数值 分别表示

2016-10-20 19:56:45 1821 1

原创 OpenGL ES 纹理实践

环境 基于 Android GLSurfaceView 实践内容 :绘制6个矩形。1.指定2个纹理图像。每3个矩形使用同一纹理。2.对同一纹理的两个矩形,分别按照:重复显示部分图像、拉伸、clamp方式显示。3.再绘制一个矩形,其纹理为2个纹理的混合。(混合方式由用户指定)最终效果如下 :

2016-10-17 09:26:11 908

原创 OpenGL 入门基础知识

环境     Android Studio     使用JAVA 学习 OpenGLES 参考书籍 《OpenGL es 2.0 上卷》大二下学期的时候,因为计算机图形学这门课,短暂接触了OpenGL,但是使用的都是一些简单的API,如 GLBegin,GLEnd,GLVertex等方法去进行绘图,在接触 Open GL ES 2

2016-10-16 22:52:52 1650

转载 unity 自我学习 怪物AI 【转】

转自雨凇MOMOusing UnityEngine;using System.Collections;//这里是枚举选择敌人类型public enum EnemyType{ Enemy0, Enemy1}public class AI : MonoBehaviour { //敌人类型枚举 有策划人员选择 public EnemyType enemyType =

2015-06-09 09:20:53 933

转载 欢迎使用CSDN-markdown编辑器

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl

2015-06-09 09:18:08 295

原创 Hdu 1285 确定比赛名次,拓扑排序

拓扑排序是对一个有向无环图(Directed Acyclic Graph简称DAG)G进行拓扑排序,是将G中所有顶点排成一个线性序列,使得图中任意一对顶点u和v,若边(u,v)∈E(G),则u在线性序列中出现在v之前。拓扑排序常用来确定一个依赖关系集中,事物发生的顺序。例如,在日常工作中,可能会将项目拆分成A、B、C、D四个子部分来完成,但A依赖于B和D,C依赖于D。为了计算这个项目进行的

2015-03-29 01:01:00 495

原创 Hdu Today 2112 最短路Dijk

Hdu Today 2112 简单的 最短路,只是把 矩阵 的数据变成 了字符串利用 map 进行映射map<string ,int >su 把 字符串 映射为 int 型 其中 注意的是,C++ 使用string 记得 加上头文件#include<string>#include<iostream>#include<cstring>#include<algorithm>#includ

2015-03-29 00:35:05 366

原创 HDU 小希的迷宫

Problem Description上次Gardon的迷宫城堡小希玩了很久(见Problem B),现在她也想设计一个迷宫让Gardon来走。但是她设计迷宫的思路不一样,首先她认为所有的通道都应该是双向连通的,就是说如果有一个通道连通了房间A和B,那么既可以通过它从房间A走到房间B,也可以通过它从房间B走到房间A,为了提高难度,小希希望任意两个房间有且仅有一条路径可以相通(除非走了回头路)。小希现

2015-03-24 22:16:07 469

原创 Hdu 2544 最短路 模板题

题目 http://acm.hdu.edu.cn/showproblem.php?pid=2544运用的是dijkstra 算法dis[i]放的是 i到终点的费点,Dijk的基本思路是,每次都找到终点最近的点为起点,再每次都从起点开始更新dis 数组。flag 数组 起到的作用就是标记已经用过的最小值。#include<iostream>#include<cstring>#include

2015-03-24 21:09:24 349

原创 Hdu 1232 畅通工程(并查集模板题)

题目 http://acm.hdu.edu.cn/status.phpuser=talent_jian&pid=1232&status=5这是一道 并查集的模板题先让我回顾下什么事 并查集一般会 我们会 合并集合,而合并集合的话 又需要知道 集合的爸爸 ,所以这时候就出现了 2个常见的函数;1.找爸爸int findfather(int dest){ if (father[dest]

2015-03-24 20:43:13 348

原创 HDU 1728 逃离迷宫(BFS)

题目 http://acm.hdu.edu.cn/showproblem.php?pid=1728简单的BFS 题目 ,就是条件之间的逻辑要理清根据题目,转弯次数不能超过要求其中 的 吧 VIS 条件 独立出来写,是 为了让所有点扩展出来,而非把VIS的点 当作墙。#include<iostream>#include<cstring>#include<queue>#include<alg

2015-03-24 13:04:23 429

原创 Hdu 1312 Red and black(BFS)

HDU 1312 Red and black#include<iostream>#include<cstring>#include<algorithm>#include<queue>using namespace std;char map[25][25];int flag[25][25];//标记 已经走过的路int step[4][2] = { { 1, 0 }, { 0, 1 },

2015-03-23 18:36:11 318

原创 快速幂

普通的幂运算,在计算过大的数时,时间复杂度 会过大。 可以采取 2进制去简化 幂运算 如a的11次方,11 即 1011 我们可以看成 23*1+ 22*0 + 21*1+ 20*1然后再幂运算中 把幂分解 成前面的,就可以 得出 #include<iostream>using namespace std;int pow(int a, int b){ int temp = a,

2015-02-26 14:56:22 451 1

空空如也

空空如也

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

TA关注的人

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