自动生成C#的函数调用流程图
需求
在一个项目里,不是每一块功能或代码块都是由一个人从头到尾去书写的;
也不是每个项目组都有完整的项目规范的,我就经历过一次了;
庞大的代码量,没有注释的代码块;
解决方案
使用doxygen和graphviz来自动分析函数间的调用关系
工具介绍
doxygen
下载 gitlink
graphviz
下载
工具安装
doxygen
我是从官网上直接下载的安装文件,所以我直接安装就可以使用,如果你下载的是其他的,那可以自行看一下官方的安装或编译文档。
graphviz
安装的时候直接ne...
如何生成C#版的protobuf
环境
首先说明一下生成的系统环境,及其一些配置
因为项目是unity的,所以我会把生成的方式集成到unity菜单下,方便使用。
系统: windows 10
步骤
将proto文件编译成.cs文件。.net版的protobuf来源于proto社区,有两个版本:
一个版本叫protobuf-net,下载地址为:https://github.com/mgravell/protobuf-net 写法上比较符合c#一贯的写法,而且效率更高。
另一个为protobuf-csharp-sport , 官方站点:http://code.google.com/p/protobuf-csharp-port/ 写法上跟java上的使用极其相似,比较遵循Google 的原生态写...
UGUI优化方案
UGUI是unity中很常见的ui解决方案,但在实际项目中,对于UGUI的使用是否高效呢?这个就因人而异了!下面我们就来盘点一下UGUI有哪些是性能的瓶颈和应该如何去优化!
Canvas的Pixel Perfect
谨慎使用Canvas的Pixel Perfect选项,该选项会使得ui元素在发生位置变化时,造成layout Rebuild。(比如ScrollRect滚动时,如果开启了Canvas的pixel Perfect,会使得Canvas.SendWillRenderCanvas消耗较高)
RaycastTarget的消耗及其原理
在这里,我们就不得不说一下EventSystem的一些机制的,为了查找这个原因,本人还特意download了官方的开源代码。废话不多说...
TeXt - Extensions
With the help of extensions, you can easily add audios, videos, slides and demos in your posts.
TeXt - MathJax
When \(a \ne 0\), there are two solutions to \(ax^2 + bx + c = 0\) and they are
\[x_1 = {-b + \sqrt{b^2-4ac} \over 2a}\]
\[x_2 = {-b - \sqrt{b^2-4ac} \over 2a} \notag\]
TeXt - Mermaid
graph TB;
A[Do you have a problem in your life?]
B[Then don't worry]
C[Can you do something about it?]
A--no-->B;
A--yes-->C;
C--no-->B;
C--yes-->B;
TeXt - Chart
{
"type": "line",
"data": {
"labels": [
"January",
"February",
"March",
"April",
"May",
"June",
"July"
],
"datasets": [
{
"label": "# of bugs",
"fill": false,
"lineTension": 0.1,
"backgroundColor": "rgba(75,192,192,0.4)",
"borderColor": "rgba(...
159 post articles, 20 pages.