首页 文章 精选 留言 我的

精选列表

搜索[游戏],共9474篇文章
优秀的个人博客,低调大师

群友案例解析:MetaGPT 从 0 开始完成了一个小游戏程序?还能输出 PRD/设计文档等材料!?

周一,MetaGPT项目正式在Github上开源发布。不到一周,已经引来众多小伙伴的关注。项目交流群内及论坛上已经有很多小伙伴展开了交流。 直接先来看下输出! 出处:交流群某位小伙伴(新一) 案例解析: 首先,新一提供了他的配置过程材料,我们也借鉴过来提供给大家参考! 具体安装流程可参考MetaGPT的README.md 01配置过程 1、通过安装Node.js,它会附带npm 2、用npm安装mermaid npm install -g @mermaid-js/mermaid-cli 3、克隆仓库到您的本地机器 git clone https://github.com/geekan/metagptcd metagpt 4、进行源码安装 python setup.py install#这一步涉及比较多的下载,耗时比较长,耐心等即可 5、安装相关的python库 pip install -r requirements.txt 02运行调试 配置完成后,就可以开始运行MetaGPT了!! 新一直接先给MetaGPT编写比较简单的描述:“Write a classic Flappy Bird game”,后来他又给MetaGPT加上小要求: python startup.py "Write a classic Flappy Bird Game" 输入(简单描述) python startup.py "Write a classic Flappy Bird Game, which requires that single-player, easy to record score, pipe shows with different height everytime" 输入(加上小要求) 等MetaGPT运行结束后,我们就可以看它生产出来的代码以及相关文档了: 序列流程图 数据&API 设计图 竞品分析 03常见疑问 问:项目地址? 答:https://github.com/geekan/MetaGPT 问:需要多少成本使用? 答:一般而言,以之前使用GPT-4的经验来说,¥1左右可以出设计,¥15左右可以出代码。 问:可以支持差量生成吗? 答:现在只支持全量生成,差量生成目前已经release到roadmap里。 问:他和chatgpt相比最大的区别是什么呀 答:可以把 ChatGPT/GPT4 等LLM理解为具有海量知识和一定逻辑推理的基础脑。智能体主要是配套提供逻辑链、记忆、工具等,让基础脑变成可以处理特定岗位任务的角色(比如硅基产品经理/架构师/程序员;当然除了案例中编程相关任务,也能用于导购,HR/公司制度答疑,解决方案/行业研究报告等。各行各业都有使用场景) 问:需求是链路的来源,如果借助AI分析来用户需求,那这第一步有什么方案么,是传统的数据分析,业务策略驱动算法(AI),还是有更高端的解决方案 答:你可以理解这是个多智能体协同框架,智能产品经理是一个单一智能体(解决需求出产),而需求的产出本身是有sop/逻辑思维链的,大家可按行业/场景做适配(目前样例仅实现最简单逻辑。老板安排了任务,听不懂先去上网找竞品) 问:与其他有什么区别? 答:架构更明确:实现同等功能的前提下,相比其他框架复杂度低了10倍左右,这是由于多智能体的逻辑更加接近现实世界的抽象,也由于其他框架有些过度设计 ROI更清晰:其他框架消耗的token量极大,而很难达到一些简单的目的,MG ¥1的工作其他框架可能要¥100 问:项目生成的只会是python代码? 答:目前以Python为主。多编程语言支持可以加到我们的roadmap中。 问:mmdc,FileNotFound 答:命令行直接运行mmdc可行,说明mmdc确实安装成功了,并且mmdc也已经在系统环境变量里了。subprocess.run(...)运行失败,找不到说明在python的环境变量里还没有mmdc的路径, 2. 将mmdc的路径添加到python环境变量中。 问:Microsoft Visual C++14.0 or greater is required 答:安装即可!

优秀的个人博客,低调大师

【iOS-cocos2d-X 游戏开发之十三】cocos2dx通过Jni调用Android的Java层代码(下)

示例代码段2: Xcode 代码: //静态函数示例2.有参数,无返回值------------------------------$$$$$$$-------------------------------- #if(CC_TARGET_PLATFORM==CC_PLATFORM_ANDROID)//判断当前是否为Android平台 JniMethodInfominfo;//定义Jni函数信息结构体 //getStaticMethodInfo次函数返回一个bool值表示是否找到此函数 boolisHave=JniHelper::getStaticMethodInfo(minfo, "com/ai/ommr/OhMonsterMR4Android","testFunWithInt","(I)V"); if(!isHave){ CCLog("jni:此函数不存在"); }else{ CCLog("jni:此函数存在"); //调用此函数 minfo.env->CallStaticVoidMethod(minfo.classID,minfo.methodID,823); } CCLog("jni-java函数执行完毕"); #endif Android(Java) 代码: //静态函数示例2.有参数,无返回值 publicstaticvoidtestFunWithInt(int_int){ Log.e("Himi","静态函数示例1.有参数,无返回值;传入的参数int="+_int); } 运行截图: 示例代码段3: Xcode 代码: //静态函数示例3.有参数,有返回值--------------------------------$$$$$$$-------------------------------- #if(CC_TARGET_PLATFORM==CC_PLATFORM_ANDROID)//判断当前是否为Android平台 JniMethodInfominfo;//定义Jni函数信息结构体 //getStaticMethodInfo次函数返回一个bool值表示是否找到此函数 boolisHave=JniHelper::getStaticMethodInfo(minfo, "com/ai/ommr/OhMonsterMR4Android","testFunWithIntAndRtn","(I)I"); jint_int; if(!isHave){ CCLog("jni:此函数不存在"); }else{ CCLog("jni:此函数存在"); //调用此函数 _int=minfo.env->CallStaticIntMethod(minfo.classID,minfo.methodID,823); //尝试jint是否能正常接收返回的int值 JniMethodInfominfo_ty; boolisHave=JniHelper::getStaticMethodInfo(minfo_ty,"com/ai/ommr/OhMonsterMR4Android","testFunWithInt","(I)V"); if(isHave){ minfo_ty.env->CallStaticVoidMethod(minfo_ty.classID,minfo_ty.methodID,_int); } } CCLog("jni-java函数执行完毕"); #endif Android(Java) 代码: //静态函数示例3.有参数,有返回值 publicstaticinttestFunWithIntAndRtn(int_int){ Log.e("Himi","静态函数示例1.有参数,有返回值;传入的参数int="+_int); return_int+1000; } 运行截图: 示例代码段4: Xcode 代码: #if(CC_TARGET_PLATFORM==CC_PLATFORM_ANDROID)//判断当前是否为Android平台 JniMethodInfominfo;//定义Jni函数信息结构体 //getStaticMethodInfo次函数返回一个bool值表示是否找到此函数 boolisHave=JniHelper::getStaticMethodInfo(minfo,"com/ai/ommr/OhMonsterMR4Android","testFunWithStringAndRtn","(I)Ljava/lang/String;"); jobjectjobj; if(!isHave){ CCLog("jni:此函数不存在"); }else{ CCLog("jni:此函数存在"); //调用此函数 jobj=minfo.env->CallStaticObjectMethod(minfo.classID,minfo.methodID,823); } CCLog("jni-java函数执行完毕"); #endif Android(Java) 代码: //静态函数示例4.有参数,有返回值(String类型) publicstaticStringtestFunWithStringAndRtn(int_int){ Log.e("Himi","静态函数示例4.有参数,有返回值(String类型);int="+_int); return"yes,return'String'isOK--byHimi"; } 运行截图: 示例代码段5: Xcode 代码: #if(CC_TARGET_PLATFORM==CC_PLATFORM_ANDROID)//判断当前是否为Android平台 JniMethodInfominfo;//定义Jni函数信息结构体 //getStaticMethodInfo次函数返回一个bool值表示是否找到此函数 boolisHave=JniHelper::getStaticMethodInfo(minfo, "com/ai/ommr/OhMonsterMR4Android",//类的路径 "rtnActivity",//方法名 "()Ljava/lang/Object;");//括号里的是参数,后面的是返回值。 jobjectjobj; if(isHave){ jobj=minfo.env->CallStaticObjectMethod(minfo.classID,minfo.methodID); } CCLog("正确获取到jobj"); // isHave=JniHelper::getMethodInfo(minfo, "com/ai/ommr/OhMonsterMR4Android",//类的路径 "nostaticFun",//方法名 "()V");//括号里的是参数,后面的是返回值。 if(isHave){ minfo.env->CallVoidMethod(jobj,minfo.methodID); } CCLog("jni-java函数执行完毕"); #endif Java 代码: //----函数示例之非静态函数调用 //(先获取个对象) publicstaticActivityactInstance;//定义单例 publicstaticObjectrtnActivity(){ returnactInstance; } //使用此对象进行调用非静态函数 publicvoidnostaticFun(){ Log.e("Himi","nostaticFunctionisOK-ByHimi"); } 运行截图: 本文转自 xiaominghimi 51CTO博客,原文链接:http://blog.51cto.com/xiaominghimi/908818,如需转载请自行联系原作者

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册