C++
文章平均质量分 91
C++相关blog
TxNet.Ltd.
不积跬步无以至千里,不积小河无以致江海。
展开
-
不装wine,你的.NET程序照样可以在Linux上运行!
让.NET应用程序在linux上运行,目前通用的做法就是在Linux上安装mono,然后通过”mono your.exe“命令运行这个程序。这种运行.net程序的办法有两个弱点,一个是需要客户机安装mono,二个是 ”mono xx.exe“ 这种命令行总让人感到有点不太专业的味道。那么,有没有办法既不安装mono,又能让你的.NET程序就像c语言编译的程序那么,”直接“在Linux上运行呢?...转载 2019-09-02 23:28:48 · 4414 阅读 · 0 评论 -
如何优雅的管理游戏资源
在游戏的开发过程中,前期的规划 往往比 后期的“优化”更为重要!比如多分辨率适配,如果前期没有规划好,可能导致的情况是,画面只在当前测试开发机或者一部分机型正常显示。做了多套资源适配,可以使在合适的机型使用对应的图片资源,避免在高清屏幕使用低质量的图片,在低分辨率屏幕因为图片太大而浪费硬件资源。机制与策略分离,可以让你设计出简单有效的接口。模块化的设计可以让你组织好各种逻辑流程,条理分明 ~ 前期转载 2014-12-30 15:09:25 · 1312 阅读 · 0 评论 -
Cocos2dx 常用的22中特效
bool HelloWorld::init(){ ////////////////////////////// // 1. super init first if ( !CCLayer::init() ) { return false; } CCSize size =CCDirector::sharedDirecto转载 2014-02-11 18:01:05 · 953 阅读 · 0 评论 -
Cocos2d-x 精灵贴图
精灵是游戏中十分重要的组成部分,随处可见,如:游戏背景、NPC、人物、道具等。在cocos2d-x引擎中,只要是用图片展示的,基本上需要使用精灵类。1. 首先来了解一下跟精灵相关的几个类:(1) CCTexture2D可以把它看成一个纹理,它是cocos2d-x渲染图形的重要参数,用来贴图,因为cocos2d-x使用opengl es绘制2d图形的,它的尺寸是2的n次方。一般通过以下方转载 2014-03-18 21:07:36 · 1227 阅读 · 0 评论 -
贝塞尔曲线运动详解
CCBezierBy* CCBezierBy::create(float t, const ccBezierConfig& c),ccBezierConfig是一个结构体:typedef struct _ccBezierConfig { //! end position of the bezier CCPoint endPosition; //! Bezier原创 2014-07-29 10:31:13 · 3491 阅读 · 0 评论 -
Cocos2d-x 常用的宏定义详解
cocos2d-x还是一套比较方便的api的,什么action啊、director啊、ccpoint啊都蛮便捷的。但是我看到几个dev有时 候会很不知道用它们,还是首先自己去写函数……用一些比较原始、低效率的方法……甚至是copy / paste………………。……。这不科学啊!你不能这么勤劳啊!你这么勤劳要出事的啊!每年有多少程序员过劳死啊!程序员一定要是懒转载 2014-02-21 16:06:25 · 1172 阅读 · 0 评论 -
cocos2dx3.0 Loading场景
进度条超级玛丽这种简单的游戏根本不需要预加载太多东西,或者说根本不需要loading这么笨重的交互。没办法,熟悉一些方法,学习而已,别太较真。场景的进度条使用ProgressTimer,如果我们使用cocosStudio创建的场景,就使用工具的那个。设置一个进度条成员变量,然后:[cpp] view plaincopyprint?lo转载 2014-08-21 20:09:12 · 1563 阅读 · 0 评论 -
ClippingNode 制作标题闪亮特效
本章介绍ClippingNode 制作标题闪亮特效原创 2014-11-06 17:33:39 · 2216 阅读 · 0 评论 -
Cocos2d-x-Lua 游戏中使用Lua脚本进行游戏开发
对于游戏公司而言,采用游戏脚本lua、python等进行开发也很常见,但是很多童鞋对脚本并没有很熟悉的概念,本篇则向大家简单介绍脚本的用途以及在Cocos2dx基础用法;Lua和python这些详细介绍的话,请不太熟悉的童鞋自行百度百科哈,那么对于lua和python则是两个常用的脚本语言,lua相对于python而言,lua比较轻量级罢了,而其他区别就不多说了,但是为什么本章要讲解lua转载 2014-06-16 23:10:39 · 2018 阅读 · 0 评论 -
关于程序员如何减少程序Bug的若干建议
毫无疑问,程序员是善于思考问题的一族。一个程序的编写都是通过:思考、设计、编写、调试、测试以及运行这些基本的阶段。 但大部分程序员都有一个问题就是不太愿意测试自己的代码。他们草草的调式完成以后就认为工作结束,测试那是测试人员的工作。 按照理论上,如果代码存在问题,那么测试人员和最终的用户肯定可以发现这些 BUG ,而等待哪个时候再返回来查找问题到底错在什么地方确实代价不小,其代原创 2014-06-29 17:55:08 · 4865 阅读 · 0 评论 -
Jni调用,cocos2d.x调用java代码
调用非静态方法首先就是调用的静态方法得到要调用的java的类对象然后通过调用minfo.env->CallVoidMethod(activityObj, minfo.methodID);方法把对象和要调用的方法以及参数(如果有)传递个java类对象中的非静态方法;java类:// c++中調用的方法public static Object rtnActi转载 2014-03-27 17:05:19 · 1004 阅读 · 0 评论 -
linux下制作静态库和动态库的方法
我们都知道 *.a 代表静态库;*.so 代表动态库。那么这两个库到底怎么制作呢? 制作静态库的方法:把代码编译为目标文件形式:# gcc -c liberr.c -o liberr.o使用工具ar创建一个存档文件:# ar rcs liberr.a liberr.o编译程序时把程序和liberr.a链接起来:转载 2015-01-04 16:52:04 · 823 阅读 · 0 评论 -
Cocos2dx入门
一.Cocos2d-x引擎特性现代化的 C++ API立足于 C++ 同时支持 JavaScript/Lua 作为开发语言可以跨平台部署, 支持 iOS、Android、Windows、macOS 和 Linux可以在 PC 端完成游戏的测试,最终发布到移动端完善的游戏功能支持,包含精灵、动作、动画、粒子特效、场景转换、事件、文件 IO、数据持久化、骨骼动画、3D二.环境配置要求:...原创 2019-04-18 15:09:46 · 22870 阅读 · 1 评论 -
cocos2d-x3.0 物理引擎之详解
cocos2d-x3.0 物理引擎之详解我在编写游戏的时候遇到了这个问题, 物理引擎其他的内容还好理解, 就这三个函数就是没找到有人详细的解释一下。找了半天终于找到合理的解释,写下来好理解。先说物理引擎:想用这个物理引擎,首先必须 创建一个物理引擎世界,普通的场景就不行了,如下: // 'scene' is an autorelease object auto scen...转载 2019-04-15 22:50:40 · 960 阅读 · 0 评论 -
cocos2dx中函数指针传递的方法
目的看到群里有个朋友搞了好几天函数指针传递,没搞好。所以写一篇文章,旨在从cocos2dx中帮朋友们找到如何传递指针。旧版本的函数指针传递全局函数函数指针调用一般在C++11之前,我们一般是这样定义一个函数指针类型。[cpp] view plaincopyprint?typede void(*pFu转载 2015-01-07 11:40:08 · 1468 阅读 · 0 评论 -
Cocos2d-x提供的57种字体
很多游戏中,便于开发就会直接采用Cocos2d提供的字体库来使用,但是因为提供的种类很多,那么Himi利用一些时间整理了57种字体样式,这些我想足够你用了;不多说下面一起来看看吧:(每张图对应11种样式的字体,字体的名字就是其样式的名字) -----------------------------1----------------------------------转载 2014-02-13 16:13:28 · 950 阅读 · 0 评论 -
CocosCreator入门
1.关于Cocos CreatorCocos Creator 是什么?它是一个完整的游戏开发解决方案,包括了 cocos2d-x 引擎的 JavaScript 实现,以及能让你更快速开发游戏所需要的各种图形界面工具,在 Cocos2d-x 基础上实现了彻底脚本化、组件化和数据驱动等特点。2.项目文件夹结构初次创建并打开一个 Cocos Creator 项目后,您的项目文件夹将会包括以下结...原创 2019-04-18 22:28:03 · 8222 阅读 · 0 评论 -
Cocos2dx的addTargetedDelegate方法的参数
在addTargetedDelegate方法中前两个参数分别对应触摸接收对象和优先级,其中优先级是一个整型参数,值越低,则优先级越高,也就越早获得触摸事件。通常,为了获得较高的优先级,可以将其指定为负数。第三个参数较为有趣,表明了是否"吞噬"一个触摸,如果设置为true,一个触摸一旦被捕捉,那么所有优先级更低的接收对象都无法接收到触摸。CCMenu就是一个会原创 2014-02-27 19:25:06 · 3800 阅读 · 0 评论 -
cocos2d-x 引擎分析:如何实现跨平台
怎么样使用 Cocos2d-x 快速开发游戏,方法很简单,你可以看看其自带的例程,或者从网上搜索教程,运行起第一个 Scene HelloWorldScene,然后在 HelloWorldScene 里面写相关逻辑代码,添加我们的层、精灵等 ~ 我们并不一定需要知道 Cocos2d-x 是如何运行或者在各种平台之上运行,也不用知道 Cocos2d-x 的游戏是如何运行起来的,它又是如何渲染界面的转载 2015-01-12 16:16:14 · 5959 阅读 · 0 评论 -
Cocos2d-x-Lua (2.x)脚本开发之 Lua语言基础
从今天开始,往后将陆续更新Lua教程,主要是搭载Cocos2dx ,有任何疑惑或者不对的地方,尽情指正、交流、探讨。那么首先肯定是Lua语言基础的知识点,下面直接附上代码,注释已经很清楚,无需赘述。这里顺便给大家推荐一款mac os上的文本编辑器,好用支持多语言编辑,oc,c,c++,java,lua,js,html等等等TextMate,图标是个菊花 – -。 下载地转载 2014-06-16 23:04:01 · 1092 阅读 · 0 评论 -
Cocos2d-x 按钮 CCControlButton 的 用法
1. 按钮创建[cpp] view plaincopy/* 正常状态下的按钮图片 */ CCScale9Sprite* btnNormal = CCScale9Sprite::create("button.png"); /* 点击状态下的按钮图片 */ CCScale9Sprite转载 2014-02-09 17:52:40 · 1566 阅读 · 0 评论 -
android 打包自定义JAR包
在项目开发过程中,我们难免会用到自己去制作自定义的VIEW控件,之后我们别的项目如果需要的话就直接将其复制到对应的项目中使用,虽说这么做是一个解决问题的方法,但毕竟不是很好。原因是,当我们项目积累越来越多,会发现自定义的控件越来越多,而且这些自定义的控件都是可以重复利用的,这时我们可以想想,如果把这些自定义控件都封装成一个JAR包,然后用一个项目积累起来,之后我们以后开发项目只要在原来JA转载 2015-01-04 16:43:58 · 1586 阅读 · 0 评论 -
Coco2dx-3.0中如何调用LUA
我写了一个用3.0的工具导出类到lua,自动生成代码的方法。以前要导出c++类到lua,就得手动维护pkg文件,那简直就是噩梦,3.0以后就会感觉生活很轻松了。下面我就在说下具体做法。1、安装必要的库和工具包,以及配置相关环境变量,请按照cocos2d-x-3.0rc0\tools\tolua\README.mdown说得去做,不做赘述。2、写c++类(我测试用的是co原创 2014-05-11 15:18:13 · 3550 阅读 · 0 评论 -
IOS内购支付服务器验证模式
IOS 内购支付两种模式内置模式的流程服务器模式的流程结论苹果反馈的状态码IOS 内购支付两种模式:内置模式服务器模式内置模式的流程:app从app store 获取产品信息用户选择需要购买的产品app发送支付请求到app storeapp store 处理支付请求,并返回transaction信息app将购买的内容展示给用户服务器模式的流程:app从服务器获取产品标识列原创 2015-07-16 10:20:04 · 28518 阅读 · 0 评论 -
深入理解 cocos2d-x 坐标系
首先对于初学的,带大家认识 cocos2d-x 中坐标系的几个概念,参考 http://blog.csdn.net/tskyfree/article/details/8292544。其他的往下看。弄懂坐标系是开始开发的重要的一步,为了不让大家头晕,现在我深入的为大家讲解一下,本人原文地址:http://www.cnblogs.com/lyout/p/3292702.html。原创 2015-01-12 16:55:07 · 1079 阅读 · 0 评论 -
Cocos2d-x 游戏内存的优化
一、内存优化原则为了优化应用内存,你应该知道是什么消耗了你应用的大部分内存,答案就是Texture(纹理)!它几乎占据了90%的应用内存。那么我们应该尽力去减小我们应用的纹理内存使用,否则我们的应用进程可能会被系统杀死。为了减少内存警告,这里我们给出两个普遍的关于cocos2dx游戏内存优化的指导原则。1)了解瓶颈,然后解决掉什么样的纹理消耗了大部分应用的内转载 2014-05-19 14:44:44 · 1293 阅读 · 0 评论 -
COCOSDX2.2如何在Mac OS X 中运行Lua (Running Lua on Mac OS X)
参考文章:1) http://www.oschina.net/question/12_769552) http://rudamoura.com/luaonmacosx.html 最近在为iOS开发游戏,我的开发机是iPhone5。在开发的游戏项目中需要使用Lua语言,所以想在我的苹果MacBook Pro 中安装Lua语言的解释器,以便进行脚本调试。我的Mac OS转载 2014-05-10 14:57:32 · 1193 阅读 · 0 评论 -
Cocos2d-x 49个动作详解
bool HelloWorld::init(){ // 1. super init first if ( !CCLayer::init() ) { return false; } CCSprite * sp= CCSprite::create("Icon.png"); sp->setPosition(ccp(150,转载 2014-02-11 17:58:08 · 2350 阅读 · 0 评论 -
Cocos2d-x 3.0中的新物理引擎:Chipmunk和Box2d
ZeroYang原创,首发于泰然,转载请著名出处。概述在游戏中模拟真实的物理世界是个比较麻烦的,通常都是交给物理引擎来做。比较知名的有Box2D了,它几乎能模拟所有的物理效果,而chipmunk则是个更轻量的引擎等。在Cocos2d-x 2.0中,游戏直接使用物理引擎,引擎提供了一个简单的CCPhysicsSprite,处理了物理引擎的body与CCSprite的关系,而物理引转载 2014-05-11 16:11:24 · 1489 阅读 · 0 评论 -
C字符串处理函数
void *memccpy (void *dest, const void *src, int c, size_t n);从src所指向的对象复制n个字符到dest所指向的对象中。如果复制过程中遇到了字符c则停止复制,返回指针指向dest中字符c的下一个位置;否则返回NULL。void *memcpy (void *dest, const void *src, size_t n);转载 2014-04-11 17:24:48 · 829 阅读 · 0 评论 -
Cocos2d-x 3.0 使用TinyXml 解析XML文件
在cocos2d-x 3.0中Xml解析已经不用自己找库了,已经为我们集成好了。text.xml 2012050808 crystal T74 T74 2012050809 goodmao T77 添加头文件:.h#转载 2014-06-22 12:33:51 · 4019 阅读 · 0 评论 -
Linux makefile 教程
最近在学习Linux下的C编程,买了一本叫《Linux环境下的C编程指南》读到makefile就越看越迷糊,可能是我的理解能不行。 于是google到了以下这篇文章。通俗易懂。然后把它贴出来,方便学习。 后记,看完发现这篇文章和《Linux环境下的C编程指南》的makefile一章所讲述的惊人的相似,只是这篇文章从一个实例切入,在有些地方比转载 2015-01-03 22:20:08 · 857 阅读 · 0 评论 -
重构.改善既有代码的设计
本书清晰地揭示了重构的过程,解释了重构的原理和最佳实践方式,并给出了何时以及何地应该开始挖掘代码以求改善。书中给出了70多个可行的重构,每个重构都介绍了一种经过验证的代码变换手法的动机和技术。本书提出的重构准则将帮助你一次一小步地修改你的代码,从而减少了开发过程中的风险。下面是我看完本书后总结的一个表格,简单的罗列了书中的坏味道和对应的处理方式。坏味道特征转载 2015-01-02 18:40:46 · 2850 阅读 · 0 评论 -
C++11 lambda 表达式解析
C++11 新增了很多特性,lambda 表达式是其中之一,如果你想了解的 C++11 完整特性,建议去这里,这里,这里,还有这里看看。本文作为 5 月的最后一篇博客,将介绍 C++11 的 lambda 表达式。很多语言都提供了 lambda 表达式,如 Python,Java 8。lambda 表达式可以方便地构造匿名函数,如果你的代码里面存在大量的小函数,而这些函数一般只被调用一转载 2014-12-29 17:41:09 · 985 阅读 · 0 评论 -
Curl 传输选项Option-详解
Curl是利用URL语法在命令行方式下工作的开源文件传输工具。它被广泛应用在Unix、多种Linux发行版中,并且有DOS和Win32、Win64下的移植版本。CURL函数列表:函数描述curl_close()关闭一个cURL会话。curl_copy_handle()复制一个cURL句柄和它的所原创 2015-02-06 17:10:44 · 22477 阅读 · 0 评论 -
C++ 11 Lambda表达式
C++ 11中的Lambda表达式⽤用于定义并创建匿名的函数对象,以简化编程⼯工作。Lambda的语法形式如下:[函数对象参数] (操作符重载函数参数) mutable或exception声明->返回值类型{函数体}可以看到,Lambda主要分为五个部分:[函数对象参数]、(操作符重载函数参数)、mutable或exception声明、->返回值类型、{函数体}。下⾯面分别转载 2015-02-27 19:28:17 · 1646 阅读 · 0 评论 -
C++ STL标准模板库
标准模板库 STL(StandardTemplate Library),即标准模板库,是一个具有工业强度的、高效的C++程序库。它被容纳于C++标准程序库(C++ Standard Library)中,是ANSI/ISO C++标准中最新的也是极具革命性的一部分。该库包含了诸多在计算机科学领域里所常用的基本数据结构和基本算法,为广大C++程序员们提供了一个可扩展的应用框架,高度体现了软件的可复原创 2015-02-27 16:32:47 · 1998 阅读 · 0 评论 -
C++ 迭代器
C++ 迭代器 基础介绍迭代器提供对一个容器中的对象的访问方法,并且定义了容器中对象的范围。迭代器就如同一个指针。事实上,C++的指针也是一种迭代器。但是,迭代器不仅仅是指针,因此你不能认为他们一定具有地址值。例如,一个数组索引,也可以认为是一种迭代器。除了使用下标来访问 vector 对象的元素外,标准库还提供了另一种访问元素的方法:使用迭代器(iterator)。迭代器是一种检查容器内翻译 2015-02-27 15:32:44 · 3615 阅读 · 0 评论 -
25个必须记住的SSH命令
任何一个系统管理员或站长对SSH都不会陌生,这个伟大的技术,免去了我们跑去机房管理服务器,或者在远程连接服务器时时刻担心内容被窃取的心惊胆战。本文将为大家介绍25个最佳的SSH命令,如果您还没用过,那么有必要将它们记录一下。OpenSSH是SSH连接工具的免费版本。telnet,rlogin和ftp用户可能还没意识到他们在互联网上传输的密码是未加密的,但SSH是加密的,OpenSSH加密所转载 2015-02-28 16:26:50 · 708 阅读 · 0 评论 -
Cocos2d-x 3.x lua绑定
**************************************lua绑定教程*************************************如何使用 bindings-generator==================Windows:------------* 确保已经安装了 `android-ndk-r9b`.* 下载python2.7转载 2015-03-05 16:25:43 · 1371 阅读 · 0 评论