[开发小技巧] Cocos2dx应用程序的命令行参数workdir:重定向工作目录

349 阅读1分钟

使用lua开发游戏的时候,一般生成游戏的可执行文件后,一般都不会频繁的再重新生成。

cocos2dx生成的desktop应用程序,加载的代码和资源是在*.app/Contents/Resources里面,项目的源代码其实是在外部,我想要加载外部的代码和资源,方便开发。

发现ProjectConfig::parseCommandLine其实提供了非常多的命令行参数,可以用来控制一些游戏逻辑:

  • -workdir: 这个目录会加入到search path,影响后续的src/res搜索, 这个参数还是SetCurrentDirectoryA的参数,用来设置工作目录
  • -writable-path
  • -entry
  • -landscape
  • -portrait
  • -resolution
  • -scale
  • -write-debug-log
  • -console:enable
  • -position
  • -debugger
  • -app-menu
  • -resize-window
  • -retina-display
  • -port: todo
  • -listen
  • -search-path
  • -first-search-path
  • -language-data-path

可以使用-workdir参数,重定向项目源代码到指定的目录,这样就不需要修改源代码重新发布一个特殊版本了。

/Users/xyf/Documents/project/tank/runtime/mac/client_tank2-desktop.app/Contents/MacOS/client_tank2-desktop -workdir "/Users/xyf/Documents/project/tank/"

release模式的配置

image.png

image.png