Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

有用过的同学说说不足和可拓展之处么? #2

Open
lfkdsk opened this issue Dec 18, 2015 · 52 comments
Open

有用过的同学说说不足和可拓展之处么? #2

lfkdsk opened this issue Dec 18, 2015 · 52 comments

Comments

@lfkdsk
Copy link
Owner

lfkdsk commented Dec 18, 2015

RT,当然可拓展之处很多。
目前来看会逐步增加:

  • 绘板
  • 流式文字
  • 音乐系统
  • 转场动画
  • 状态机
  • 蓝牙、网络连接

(以上均已添加)

@cezheng
Copy link

cezheng commented Dec 21, 2015

还没有用,但是大概看了一下Repo的内容,似乎是个纯java的引擎,只想斗胆问一句楼主,和那些个主流的用C++/Lua/Js的引擎比起来,选择这个引擎的理由是?

@lfkdsk
Copy link
Owner Author

lfkdsk commented Dec 21, 2015

更面向Android原生吧,这也就是命名轻量级的原因,其他的引擎的转译到Android上的坑其实挺多的,不过只用java效率确实一般,所以音频系统、还有如果写物理引擎的话会用C++写吧!

@ice1000
Copy link

ice1000 commented Mar 11, 2016

好评,回头写个游戏试试,正愁没引擎呢(不想去学什么Unity啊、UE了)

thank♂you♂sir

对了 这个是你一个人独自开发的?

@lfkdsk
Copy link
Owner Author

lfkdsk commented Mar 12, 2016

@ice1000 はい

@lfkdsk
Copy link
Owner Author

lfkdsk commented Apr 2, 2016

说实话大家觉得Js真的快=——=?

@ice1000
Copy link

ice1000 commented Apr 3, 2016

JS是啥?JavaScript?

@lfkdsk
Copy link
Owner Author

lfkdsk commented Apr 4, 2016

@ice1000 嗯,不还是要靠C++?真就自己来速度怎么能快啊=_=

@ice1000
Copy link

ice1000 commented Apr 5, 2016

我信任JVM
尤其是当你在一个基于JVM的系统上跑Java

@lfkdsk lfkdsk closed this as completed Apr 5, 2016
@lfkdsk lfkdsk reopened this Apr 5, 2016
@lfkdsk
Copy link
Owner Author

lfkdsk commented Apr 14, 2016

大家有什么好的想法么?😚😚😚

@ice1000
Copy link

ice1000 commented Apr 14, 2016

这个引擎还是蛮小众的 😂
不过好羡慕你 五百星的项目

@cezheng
Copy link

cezheng commented Apr 14, 2016

说实话Java真的慢,特别是对游戏这种比较需要性能的东西来说,C++已经专门为游戏开发服务了20多年,优化经验啥的都积累了很多。说Android基于JVM的能不搞笑么,只是跑app的runtime有用jvm,系统本身google用C++写了多少东西做了多少优化,要是android真就是纯java写的那真是没什么前途。

@cezheng
Copy link

cezheng commented Apr 14, 2016

js和lua什么的,做的就是一个c++ binding,说到底当然要靠C++的

@lfkdsk
Copy link
Owner Author

lfkdsk commented Apr 14, 2016

😂😂😂并没有打算搞什么大型开发,就是自己做着玩的(゚ω゚)

@cezheng
Copy link

cezheng commented Apr 14, 2016

其实不是跟repo主说,是跟信任jvm的那位盆友说😂

@ice1000
Copy link

ice1000 commented Apr 14, 2016

@cezheng 好吧 Java快是我直觉上的看法
但是Java也不慢啊
我看JustWe就跑得挺好的
还有这个 知乎上的。。。
在效率差距不大的情况下我认为减少接口更好

@ice1000
Copy link

ice1000 commented Apr 15, 2016

问下 你那个SQLite数据库访问 为啥我找不到Node类 难道还要手动包含你说的那个框架? 😨
还有 建议适配下 SharedPreference 我保存个最高分 😂
@lfkdsk

@lfkdsk
Copy link
Owner Author

lfkdsk commented Apr 15, 2016

@ice1000 。。。IOC框架是指用反射调用注解类进行注入,正常node应该能找到啊,你有什么便捷的联系方式比如QQ什么的么?感觉直接这么说说不清楚,还有建议单开issue
=-=

@ice1000
Copy link

ice1000 commented Apr 17, 2016

我把项目文件上传了 hiahia @lfkdsk

@hnshilei
Copy link
Contributor

hnshilei commented Oct 8, 2016

@lfkdsk 尝试运行了微信打飞机的demo很不错,有两点想请教一下:
1、图片格式有哪些限制和要求?我尝试将ship的材质替换成了32位的png图片,结果不显示!
2、帧动画支持plist文件吗?

@ice1000
Copy link

ice1000 commented Oct 8, 2016

貌似丰恺不在,我帮他回复一下:
@hnshilei
我觉得我肯定不支持plist的,这个引擎的逐帧动画实现机制就是剪裁单张图片,和plist并没有关系(我假定我说的和你说的都是iOS的那个plist)。还有图片格式的限制,我觉得只要是Android认的图片都可以(毕竟读取图片用的系统API,像什么jpg png gif webp都是肯定支持的。可能是你的图片有问题吧。如果你的32位png图片专门拿出来在另一个APP里面调系统API读能成功读出来的话,那就肯定是 @lfkdsk 的锅了 😂

@hnshilei
Copy link
Contributor

hnshilei commented Oct 9, 2016

@ice1000 多谢回复!
1、昨晚扒了下源码,确实和你说的一样,发现没有plist文件的解析支持;
2、32位图片已经加载出来了,发现是由于ship.setDipScale(100, 100);设置的问题,把这句注释掉,图片就出来了。这个DipScale参数很诡异的样子。。。。

另外:
1、我还想控制动画的速度,有什么办法或想法吗?现在动的太快了。
2、sprite能控制朝向吗?我也没有找到相关的设置接口。。。

@ice1000
Copy link

ice1000 commented Oct 9, 2016

控制朝向应该是通过Rotate这类的东西实现。
别的我就不是很清楚丰恺是怎么实现了,有兴趣的话可以移步我的引擎专用组织icela,里面的除了这个引擎的fork之外的几个仓库80%的代码都是我写的。我之前弄了个JavaSE的游戏引擎,正在往Android上移植,感兴趣的话就去看看吧?
欢迎提出各种问题Orz。。。。

@hnshilei
Copy link
Contributor

hnshilei commented Oct 9, 2016

@lfkdsk 引擎更新变化比较大,原来那个微信打飞机的demo还是老架构。而且新版架构也没有例子可以参考哇。。。。抽空能把demo更新一下就好啦

@ice1000
Copy link

ice1000 commented Oct 9, 2016

我写过一个Demo @hnshilei

@lfkdsk
Copy link
Owner Author

lfkdsk commented Oct 9, 2016

2333333 @hnshilei @ice1000 莫名其妙的来晚了

@lfkdsk
Copy link
Owner Author

lfkdsk commented Oct 9, 2016

/Anim 里面有动画类,能处理这些需要,有空我再补几个新添加的

@hnshilei
Copy link
Contributor

@ice1000 谢啦,已经把demo下载下来了,改到我的Eclipse工程中了,不过demo里面好像也是用的simpleEngine没有用到新加的SimpleLayerEngine,那个怎么使用,也没见到说明,文档和例子跟不上框架的步伐呀 : )

@hnshilei
Copy link
Contributor

@lfkdsk 动画类我看了,主要是控制移动,缩放,或是绑定帧动画,我现在是想要控制sprite绑定的FrameAnimation切换的速度,,,,现在动的太快了,想让Sprite动的节奏慢一点......有什么好办法吗?谢啦!

@hnshilei
Copy link
Contributor

@lfkdsk @ice1000 有办法使用ttf字体吗?或者支持其他什么字体?:)

@lfkdsk
Copy link
Owner Author

lfkdsk commented Oct 10, 2016

@hnshilei SimpleLayerEngine其实和原来用法是一样的,并且这个SimpleLayerEngine就是为了方便兼容老版本的东西设置的,接口都是一样的。

@lfkdsk
Copy link
Owner Author

lfkdsk commented Oct 10, 2016

@hnshilei 嗯嗯,应该是我Layer更新之后的文档没更新,其实Layer的变化也不太大,大概只做了一件事就是把对象进一步的实体分层,把不需要碰撞的对象放在不同的层级上,以便于缓解那个O(n^2)的碰撞处理,其余的都是一个样子的,我的文档最近就会更新(在赶一个DeadlineQAQ)。另外现在里面应该是有一个四叉树,但还没有应用到Engine里面,但是如果想自己处理碰撞的话,可以看看那个四叉树。

@lfkdsk
Copy link
Owner Author

lfkdsk commented Oct 10, 2016

@hnshilei 绘制使用的还是Paint对象,是可以使用TTF字体的。另外com.lfk.justweengine.Anim.VelocityAnimation这个类应该能帮到你控制移动。

@hnshilei
Copy link
Contributor

@lfkdsk 多谢回复!
1、自定义字体已经可以显示了,最喜欢JustWe就是这一点,可以无障碍的使用原生的东东,赞一个!
2、可能我没有描述清楚:类似捕鱼达人里面小鱼的游动姿态动画,由多帧构成,现在我是加载了帧动画,但是帧动画切换的太快,能让切换过程慢一点吗?VelocityAnimation应该不是这个作用吧。

@hnshilei
Copy link
Contributor

hnshilei commented Oct 11, 2016

@lfkdsk 参考VelocityAnimation重写了Frame的步进方法,达到了需要的效果,抽空整理下提交上去:)

    @Override
    public int adjustFrame(int ori) {
        int modified = ori;
        if (timer.stopWatch(100)) {
            modified += direction;
            if (modified < firstFrame) {
                modified = lastFrame;
            } else if (modified > lastFrame) {
                modified = firstFrame;
            }           
        }
        return modified;
    }

@lfkdsk
Copy link
Owner Author

lfkdsk commented Oct 11, 2016

@hnshilei FrameAnimation 的动画是随着FPS来变化的,当时是觉得要提供足够的满足FPS的帧,才能有不错的显示效果。

@hnshilei
Copy link
Contributor

嗯,如果是一秒内的动画,确实满帧的效果确实是比较理想的。
我们的美工给的动画其实是超过1秒的长动画帧,如果不加间隔进来,就是1秒内把2-3秒的动作都完成了,类似于快进的效果了,对吧 :)

@lfkdsk
Copy link
Owner Author

lfkdsk commented Oct 11, 2016

嗯,我记得我里面好像有设置间隔的Anim不过忘了是哪个了,你可以把修改后的创建一个新类,欢迎PR!

@ice1000
Copy link

ice1000 commented Oct 11, 2016

卧槽居然是正式游戏项目啊。。。牛逼牛逼 @hnshilei

@hnshilei
Copy link
Contributor

@ice1000 也不算是正式项目,是把几个小游戏,嵌入到一个大的APP中。

原计划是用cocos2dx移植几个PC端现成的小游戏,后来发现那个是用jni的,如果想整合,必须把我现有的整个工程,移植到它生成的框架去,搞起来太麻烦了。而且和原生App数据传输也是个麻烦事,,,,

幸运的是遇到了JustWeEngine,帮我跳过了这个大坑。直接纯java而且全部开源,运行效率也满足了我们项目的需要,简单小游戏帧率在40-60帧,足够我们用了。

@ice1000
Copy link

ice1000 commented Oct 27, 2016

真好啊。。。要是我的那个引擎早点写完就好了Orz [抱头痛哭]

@lfkdsk
Copy link
Owner Author

lfkdsk commented Oct 27, 2016

@ice1000 我觉得你应该先把文档写了,JavaDoc只是一个API查询手册,当不了文档来用的。

@lfkdsk
Copy link
Owner Author

lfkdsk commented Oct 27, 2016

@hnshilei 嗯,多谢鼓励,写完了希望能看到成品QWQ

@ice1000
Copy link

ice1000 commented Oct 27, 2016

我的几个引擎API都是一样的呀。。。可以直接照搬JVM版那个(不过现在还没写完)

@hnshilei
Copy link
Contributor

@lfkdsk 刚刚编辑上传了一个饥饿鲨鱼的demo : )
地址:https://github.com/hnshilei/justweTest_HungryShark.git

@ice1000
Copy link

ice1000 commented Dec 15, 2016

竟然是Eclipse。。。

@hnshilei
Copy link
Contributor

呵呵,为了在老项目里面跑,把引擎转到Eclipse里面了,本来想转回到AS工程的,后来想想,就保持Eclipse算了,也是给有类似需要的同学一个参考吧:)

@PeterJiung
Copy link

请问一下如果顶部想加一个toolbar 如何实现?

@lfkdsk
Copy link
Owner Author

lfkdsk commented May 9, 2017

@PeterJiung 目前使用 Activity 封装的 Engine 因为使用了全屏的主题,所以没有默认的 ToolBar,但是本身 SurfaceView 外有一层包裹的 FrameLayout 空间,可以通过这个控件添加 ToolBar,如果有需要可已自行修改 Engine 的实现,另外我也会修改出方便的 Fragment 的版本并入新的版本中。

@xiaogaofudao
Copy link

小白 一枚,问下啊,是 基于 opengl es 的么

@ice1000
Copy link

ice1000 commented Jun 16, 2017

@xiaogaofudao 上面都说过了是原生绘制的(SurfaceView

@ice1000
Copy link

ice1000 commented Jul 21, 2017

不要搞笑了,你可以在这个Activity里面加入其他的View,把下面的SurfaceView挡住就行了 @WangShuo1143368701

@hnshilei
Copy link
Contributor

android 8.0系统,实测在华为荣耀9青春版上, 游戏帧率特别低,大约只有5~6帧。。。为何呢?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants