m
m
我觉得最后不需要增加Vertor2 posTemrp这个变量来用于中间传递值,最后一次图片没有显示正常,是因为在给其他顶点赋值位置的时候,应该使用vertexTemp的坐标来乘,而不是上面uv中心点origin的坐标来乘
渲染设置
Cull off/back/front //选择渲染那个面
ZTest Always/LessGreater/LEqual/GEqyal/Equal/NotEqual//深度测试
Zwrite off/on //深度写人
Blend Srcfactor DstFactor// 混合
LOD 100 //不同情况下使用不同的LOD,到达提升性能
常用标签
''Queue''=''Transparent''//渲染循序
''RenderType''=''Opaque''//着色器替换功能
''DisableBatching''=''True''//是否进行合批
''ForceNoShadowCasting''=''True''//是否投射阴影
''IgnoreProjector''=''True''//受不受Projector的影响,通常用于透明物体不受影响
''CanUseSpriteAltas''=''False''//是否用于图片的shader,通常用于UI
''PreciewType''=''Plane''//用于shader面板预览的类型
UniqueKey 是允许为空且允许多个为空,但在不为空的情况下是不允许重复的;
主键:Primary Key
Unique key
外键 Foreign key
表的关系
主键:一个表必须要有主键 ,主键是一个表的唯一标识;
举例:当我们开发游戏的时候,其中的user表中的userName则为一个键值,该值必须唯一且不能为null;
SQL 语句:
是在所有的数据库中都是通用,但是在不同的数据库中的关键字和数据类型上会存在一定的区别;
localhost 、127.0.0.1 都表示本机;
如何在mySql 存储数据:
1,mySql可以创建多个库,dataBase 每个库下面可以创建多个表(表格)table通过表格存储我们的数据
什么是表 Table (表,行,列,格子)表里有表头 表头表示这个表有哪些列,在mySql中需要先定义表头 相当于是什么数据
MySQL Connectors :指的是不同语言中与SQL的交互,而MySQL就是由SQL接口、解析器、优化器、缓存、存储引擎组成的。
MySQL Workbench :相当于一个GUI的记录工具,可以进行可视化的操作
MySQL Server 配置:配置MySQL Server所监听的端口号,用户名及密码 ,
Samples and Examples 配置实例:用于学习的的配置实例;
Config Type: 安装环境配置 ---------Development Machine :开发环境-------------ServerComper: 服务器环境-------
MySQL 存在一个默认的超级管家员,
用户命为:Root ,安装时候设置的密码及为Root用的密码;
MySQL 的安装过程大部分只需要默认安装即可,但相对于其中的超级管理员需要进行密码设置,因为是学习期间 默认设置密码和 账号都为 root 即可;
其中的理论知识只需要对其进行了解,使实践来支持理论知识 ;
游戏服务器 GameServer:
??? ???
与上节的webServer 相似
1,正常情况下是无法直接访问数据库服务器的
2,web服务器相当于没有仅做数据处理的计算机,把性能全部集中在处理数据上;
3,负载均衡?
4,关于ip与端口号
小bug:多次加载会重复添加,需要在加载前清理inventory。
购买时可能背包满了放不下
public void BuyItem(Item item)
{
if (player.ConsumeCoin(item.BuyPrice)==true)
{
if (Knapsack.Instance.StoreItem(item)==false)
{
player.EarnCoin(item.BuyPrice);
}
}
}
角色面板有物品时,可以直接交换位置
public void PutOn(ItemUI itemUI)
{
foreach (EquipmentSlot slot in slotsArray)
{
if (slot.IsRightItem(itemUI.Item))
{
if (slot.transform.childCount > 0)
{
ItemUI currentItemUI = slot.transform.GetChild(0).GetComponent<ItemUI>();
itemUI.Exchange(currentItemUI);
}
else
{
slot.StoreItem(itemUI.Item);
Destroy(itemUI.gameObject);
}
InventoryManager.Instance.HideToolTip();
break;
}
}
}
扩展的写法
物品,讲的太啰嗦了
事件bool值默认为false
Tween tween = transform.DOLocalMoveX(300,0.5f)
动画的事件回调:
tween.OnComplete(function)
动画的缓动函数设置
tween.SetEase(Ease.InOutBounce)
动画循环次数
tween.SetLoops(-1, LoopType.Incremental)