小编Gol*_*les的帖子

使用Lua创建计时器

我想用Lua创建一个计时器,我可以指定一个在X秒过后触发的回调函数.

实现这一目标的最佳方法是什么?(我需要从网络服务器下载一些数据,每小时解析一次或两次)

干杯.

lua timer

8
推荐指数
2
解决办法
5万
查看次数

google :: dense_hash_map vs std :: tr1 :: unordered_map?

我正在为几个平台开发移动游戏(Android,iOS,有些甚至可能在将来使用某种控制台).

我正在尝试决定是否使用tr1 :: unordered_mapgoogle :: dense_hash_map从资源管理器中检索纹理(以便以后使用OpenGL进行绑定).通常这可能每秒发生几次(每帧N,我的游戏运行速度约为60 fps)

考虑因素是:

  • 性能(内存和CPU明智)
  • 可移植性

欢迎任何想法或建议.

c++ iphone ios

7
推荐指数
1
解决办法
5196
查看次数

索尼PSP的独立开发?

我想知道是否有一些PSP程序员可以与我分享他们的意见.我现在是iPhone/iPod独立游戏开发者(我也开发非游戏应用程序,但我真的很喜欢游戏).苹果应用程序商店非常拥挤,所以对于像我这样的独立开发者,凭借我的(低)营销资源,在应用程序商店中真的很难被注意到.

索尼PSP miniS,对于独立开发者来说似乎是一个很好的机会,但我想知道是否有人可以给我一些见解或关于平台的想法?

sony playstation-portable

6
推荐指数
1
解决办法
2765
查看次数

tomcat不会在linux机器上启动

我是Linux的新手,但我花了一整天时间安装了Java和Tomcat.我的目标是使用这个Linux机器托管应用程序.我知道从我的基于Windows的机器一切正常,但它是我的笔记本电脑所以我打算使用Linux Box作为我的专用服务器.

在许多论坛之后,我现在已经安装了Tomcat 7.但是我无法开始.

更改为tomcat目录和"./startup.sh"我得到以下输出:

Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME:  /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: usr/lib/jvm/java-6-sun/
Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Run Code Online (Sandbox Code Playgroud)

那是输出的结束.

但是localhost:8080没有启动,并且在tomcat日志文件中出现错误"eval:1:usr/lib/jvm/java-6-sun // bin/java:not found"

希望这里有一些专家可以帮助我解决这个问题.请注意,对于Linux,我是新手.

PS:我的Linux版本是Ubuntu 10.04 LTS - Lucid Lynx

java linux tomcat

6
推荐指数
2
解决办法
3万
查看次数

如何在Lua中编写这个正则表达式?

我是Lua正则表达式等价函数的新手,我需要编写以下正则表达式,它应该匹配带小数的数字

\b[0-9]*.\b[0-9]*(?!])
Run Code Online (Sandbox Code Playgroud)

基本上,它匹配十进制格式的数字(例如:1,1.1,0.1,0.11),它们不以']'结尾,我一直试图用Lua使用这样的正则表达式string.gmatch,但我很缺乏经验与Lua匹配表达式...

谢谢!

regex lua pattern-matching

6
推荐指数
1
解决办法
2万
查看次数

Vim E854:路径太长,无法完成

我有一个Rails RSpec文件,看起来像

require 'spec_helper'

describe "Something" do
  ...
end
Run Code Online (Sandbox Code Playgroud)

当我尝试使用Ctrl+ N来自动完成该文件中的任何内容时,我得到:

错误消息的屏幕截图

文字版:

Scanning included file: spec_helper.rb
E854: path too long for completion
Press ENTER or type command to continue
Run Code Online (Sandbox Code Playgroud)

如果我Ctrl+ C这个,它完美地完成了我的话.

要通过使用包含的文件来避免Vim自动完成,我可以这样做:

:set complete-=i
Run Code Online (Sandbox Code Playgroud)

但这不是问题的根源.

我怎样才能解决这个问题?

vim autocomplete ruby-on-rails

6
推荐指数
1
解决办法
508
查看次数

使用neocomplcache和clang_complete?

我正在尝试使clang_completeneocomplcache很好地发挥.我的问题是,当我打开一个cpp,c,objcobjcpp文件我得到以下错误neocomplcache

completefunc=ClangComplete^@^ILast set from ~/.vim/plugin/clang_complete.vim
Another plugin set completefunc! Disabled neocomplcache. 
Run Code Online (Sandbox Code Playgroud)

clang_complete.vim具有以下配置行:

au FileType c,cpp,objc,objcpp call <SID>ClangCompleteInit()
Run Code Online (Sandbox Code Playgroud)

我的问题是,是否有办法让我不再得到这个错误?有没有办法我可以使用,clang_complete并以某种方式仍然可以访问让我们说neocomplcache片段?

vim clang-complete neocomplcache

6
推荐指数
1
解决办法
2660
查看次数

优化工作流程以更新内部拥有的cocoapods依赖项?

假设我有一个主要Project A的几个cocoapods依赖(它们由我们组织的cocoapods repo内部拥有).

假设我正在努力Project A,并且在处理它时我发现了一个修复DependencyB,所以我修改了该依赖项中的代码,同时仍然在ProjectA的Xcode项目上.

将依赖项上的更改推送到自己的存储库然后更新该依赖项的最佳工作流程Project A什么?

我真的想要一些方法,以避免,完全自动化简化以下工作流程(这是一个PITA)

Worflow避免

  1. git clone git@github.com:Organization/DependencyB.git
  2. 在依赖项目中进行更改(修复我在处理时发现的问题时所做的更改相同Project A)

  3. 更新DependencyB.podspec文件

    s.version = "0.1.7"
    s.source = { :git => "https://github.com/Organization/DependencyB.git", :tag => "0.1.7" }
    
    Run Code Online (Sandbox Code Playgroud)
  4. 提交并标记此依赖项的版本

    git add -A
    git commit -m 'Made some changes'
    git tag -a 0.1.7 -m 'This is an awesome tag :D'
    git push origin master …
    Run Code Online (Sandbox Code Playgroud)

xcode cocoa-touch objective-c ios cocoapods

6
推荐指数
1
解决办法
786
查看次数

只在我的2d引擎中集成Box2D碰撞检测?

我已经在我的引擎中集成了box2d,(Debug Draw等),并且我可以投入一些2d正方形/矩形等世界.

我看到这篇文章,其中用户基本上没有使用世界进行碰撞检测,但是用户没有解释他如何使用歧管(b2Manifold)等.

另一篇帖子,是在cocos2d论坛上,(在第三个回复中向下滚动到用户林)

任何人都可以帮我一点吗?,基本上想要添加碰撞检测而不需要使用b2World等.

非常感谢!

c++ iphone box2d cocos2d-iphone box2d-iphone

5
推荐指数
1
解决办法
1595
查看次数

什么STL容器执行中间删除元素?

我需要选择一个容器来保存指向我定义的类型(Particle)的指针.我正在使用预先分配的粒子Object Pool(包含在std :: vector上预先分配的对象).

我的粒子发射器在粒子池需要发射时向粒子池询问粒子(为了避免游戏中的粒子分配).当粒子到期时,它将返回到粒子对象池.

正如你所看到的,当我遍历我的粒子参考容器(需要选择一个)以便更新它时,我将不得不检查哪些粒子已经过期(lifetime <= 0.0)并将它们返回到粒子池,过期的粒子可能是在容器的任何位置.

我一直在考虑使用std::list,这就是为什么:

列表(AFAIK)在开始时提供恒定时间插入,并在任何点提供恒定时间(假设您已迭代到该点).

我们欢迎您对我的系统提出任何建议或改进,以便更好地容纳您的容器建议.

编辑:

为了更好地解释自己:

发射器中粒子的寿命完全相同,它取决于范围,例如,5.0秒+ - (0.0到0.5).这是为了给粒子一个随机元素,并且在固定时间内看起来比所有粒子都好.

算法伪码:

    // Assume typedef std::container_type<Particle *> ParticleContainer

void update(float delta)
{   
    ParticleContainer::iterator particle = m_particles.begin();   

    for(; particle != m_particles.end(); ++particle)
    {
        updateParticle(*particle, delta);         //Update the particle

        if ( (*particle)->lifeTime <= 0.0 )
        {
            ParticlePool.markAsFree(*particle);   //Mark Particle as free in the object Pool
            m_particles.remove(*particle);        //Remove the Particle from my own ParticleContainer
        }   
    }
}
Run Code Online (Sandbox Code Playgroud)

c++ stl particles

5
推荐指数
2
解决办法
2995
查看次数