小编Gol*_*les的帖子

粒子系统设计?

我正在设计我自己的粒子系统引擎,这是出于学习目的,我真的不想使用现有的引擎.

现在我生成了漂亮的粒子,但我想布置引擎以便更容易使用它们.

我一直在想一个类"粒子系统",

该类将包含以下引用:

particlesList:组成系统的粒子列表.

systemEmitter:粒子的系统发射器,Emitter类应该能够执行几种粒子发射技术,例如从线,点发射,从多边形中随机发射.此类也应该进行发射控制,例如向一个点发射,远离一个点,在一个方向和时间发射.

particleController:管理例如围绕点旋转,可变粒子大小,可变粒子颜色,粒子以不同方式反应的系统周围区域,碰撞检测(与其他对象或在粒子内是否必要).

粒子渲染器:负责绘制此系统,可变混合类型,粒子纹理,粒子类型,如三角形,圆形,自定义...

这四个项目将构成粒子系统类.一些FX可能需要多个粒子系统,例如Fire FX,可以使用一个系统用于火灾,一个系统用于烟雾,一个系统用于火花.

这就是我的想法,但我真的很想知道这种设计方法是否合适,或者你是否看到我缺少某些东西或者能够/应该做些不同的事情.我没有想过一些简单的方法来"保存"FX,例如什么是告诉我的引擎的最佳方式,"画火","画爆炸","画喷泉"等,也许存储外汇信息在xml文件中是个好主意等.

意见真的很受欢迎,正如我之前所说,我真的想建立这个,而不是使用其他引擎,出于学习的原因.

opengl oop particles

10
推荐指数
1
解决办法
4373
查看次数

从iOS发送多部分POST并在PHP $ _POST中读取参数?

我正在尝试从iPhone/iPad发送多行帖子到php服务,问题是由于某种原因,POST内容类型似乎是application/x-www-form-urlenconded,(我发现使用Wireshark来解决这个问题)

这实际上是Wireshark POST数据包捕获的一小部分:

    **Content-Type: application/x-www-form-urlencoded\r\n**
    Content-Length: 324\r\n
        [Content length: 324]
    Connection: keep-alive\r\n
    \r\n
    [Full request URI: http://my.server.com/mobile/tools/authentication]
Line-based text data: application/x-www-form-urlencoded
    --0xKhTmLbOuNdArY\r\n
    Content-Disposition: form-data; name="login"\r\n
    \r\n
    hello@hello.com\r\n
    --0xKhTmLbOuNdArY\r\n
    Content-Disposition: form-data; name="password"\r\n
    \r\n
    somepassword\r\n
    --0xKhTmLbOuNdArY\r\n
    \r\n
    --0xKhTmLbOuNdArY--\r\n
Run Code Online (Sandbox Code Playgroud)

问题是在服务器中我试图从这个POST请求中读取登录名和密码变量,但是因为我认为php认为POST请求是不可能的x-www-form-urlencoded,所以如果我设置authentication.php为:

<?php
echo("<pre>")
print_r($_POST)
echo("</pre>")
?>
Run Code Online (Sandbox Code Playgroud)

我明白了:

<pre>Array\n
(\n
    [--0xKhTmLbOuNdArY\r\n
Content-Disposition:_form-data;_name] => "login"\r\n
\r\n
hello@hello.com\r\n
--0xKhTmLbOuNdArY\r\n
Content-Disposition: form-data; name="password"\r\n
\r\n
somepassword\r\n
--0xKhTmLbOuNdArY\r\n
\r\n
--0xKhTmLbOuNdArY--\r\n
\n
)\n
</pre>
Run Code Online (Sandbox Code Playgroud)

这显然不好,因为如果我使用这个简单的html表单发送请求:

<FORM action="http://my.server.com/mobile/tools/authentication.php" method="post">
   <P>
   <LABEL for="login">E-mail: </LABEL>
             <INPUT type="text" name="login"><BR>
   <LABEL for="password">pass: …
Run Code Online (Sandbox Code Playgroud)

php post objective-c nsurlrequest ios

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

将四边形变换为矩形?

我有一个由任意四边形组成的场景.我需要能够将四边形转换成矩形.每个四边形都在2d坐标中,因此它们有4个顶点(x_i, y_i).

转换需要有一个逆,因为想法是在操作矩形后返回原始四边形.

执行此操作最简单的方法是什么?我听说它被称为透视转换,但我发现一些小线索让我觉得这很容易做到.

opengl graphics linear-algebra computer-vision

8
推荐指数
1
解决办法
8457
查看次数

使用Lua创建计时器

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

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

干杯.

lua timer

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

这是在Objective-C中使用Blocks的有效方法吗?

我一直在构建一个HTTP客户端,它使用Web服务在客户端和服务器之间同步信息.我一直在使用Blocks和NSURLConnection在客户端实现这一点,但我在objc_msgSend()中频繁出现EXC_BAD_ACCESS崩溃.根据我的理解,这通常意味着已经调用了从堆栈中掉落的存储块.我认为我已正确编码以避免这种情况,但我仍然卡住了.

这是我的代码在概念上做的事情.它首先调用"synchronizeWithWebServer".该方法调用"listRootObjectsOnServerWithBlock:",它接受在方法返回时调用的块.

"listRootObjectsOnServersWithBlock:"异步启动到Web服务器的NSURLConnection.它期望在返回时调用块.在该块内部,我希望能够执行原始块(因此恰当地命名为"块").

这只是我的代码的简化版本.真正的同步过程更复杂,但它与下面的内容大致相同.

有时代码运行得很好,但是大约80%的时间它在例程中很早就崩溃了.当我的数据集变大时,它似乎更容易崩溃.

  - (void)synchronizeWithWebServer
  {
       [self listRootObjectsOnServerWithBlock:^(NSArray *results, NSError *error) {

           //Iterate over result objects and perform some other similar routines.
       }];
  }

  - (void)listRootObjectsOnServerWithBlock:(void (^)(NSArray *results, NSError *error))block
  {
       //Create NSURLRequest Here

       //Create connection asynchronously.
       block = [block copy];
       [NSURLConnection sendAsynchronousRequest:urlRequest 
                                          queue:[NSOperationQueue currentQueue]
                              completionHandler:^(NSURLResponse *response, NSData *data, NSError *error){

                       //Parse response from web server (stored in NSData *data)
                       NSArray *results = .....

                       //Call 'block'
                       block(results, error);
                       [block release];
                       }];
   }
Run Code Online (Sandbox Code Playgroud)

cocoa asynchronous objective-c grand-central-dispatch objective-c-blocks

8
推荐指数
0
解决办法
599
查看次数

是否有Ruby gem使用Google Images API?

我需要在我的Rails应用程序上与Google Images API对话.有没有Ruby宝石可以做到这一点?我发现了一个使用过时的API的旧gem.

ruby gem ruby-on-rails-3

8
推荐指数
1
解决办法
3942
查看次数

将vim游标列颜色更改为vim背景以外的其他颜色?

如何使vim列(:设置光标列)具有不同的颜色?这就是我现在看到的:

在此输入图像描述

请注意,列颜色与vim用于标记我的标识等的颜色相同(我认为是背景颜色).我想选择不同的颜色.

干杯:)

vim macvim

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

rspec和工厂女孩出现重复的工厂错误?

我正试图在我运行的每个测试之间重置工厂女孩的"序列".

(factory_girl 2.6.0factory_girl_rails 1.7.0)

我认为要这样做,我必须重新加载FactoryGirl定义.我在spec_helper.rb的最后几行中这样做:

require 'rubygems'
require 'spork'
#uncomment the following line to use spork with the debugger
#require 'spork/ext/ruby-debug'

Spork.prefork do
  ENV["RAILS_ENV"] ||= 'test'
  require File.expand_path("../../config/environment", __FILE__)
  require 'rspec/rails'
  require 'rspec/autorun'
  require 'capybara/rspec'

  require "rails/application"
  Spork.trap_method(Rails::Application::RoutesReloader, :reload!)

  Dir[Rails.root.join("spec/support/**/*.rb")].each {|f| require f}

  RSpec.configure do |config|
    config.mock_with :rspec

    require 'database_cleaner'
    config.before(:suite) do
      DatabaseCleaner.strategy = :transaction
      DatabaseCleaner.clean_with(:truncation)
    end

    config.before(:each) do
      DatabaseCleaner.start
    end

    config.after(:each) do
      DatabaseCleaner.clean
    end

    config.infer_base_class_for_anonymous_controllers = false

    # For mailer
    config.include(MailerMacros)
    config.before(:each) {reset_email}
  end

end …
Run Code Online (Sandbox Code Playgroud)

rspec ruby-on-rails rspec2 factory-bot

8
推荐指数
1
解决办法
2974
查看次数

如何自定义Facebook发送按钮?

我正在尝试自定义Facebook"发送"按钮的外观.

我使用文档中提供的代码生成按钮,但是我不知道如何修改按钮的图像或文本?

谁能举个例子?我想javascript是我唯一的选择吗?

我的代码现在看起来像这样:

<fb:send href="http://www.mywebsite.com/something"></fb:send> 
Run Code Online (Sandbox Code Playgroud)

这会生成一个如下所示的按钮:

在此输入图像描述

谢谢!

facebook

8
推荐指数
1
解决办法
8679
查看次数

保存或序列化AFNetworking操作队列?

随着AFNetworking你平时排队通过执行以下操作:

[_httpClient enqueueHTTPRequestOperation:operation];
Run Code Online (Sandbox Code Playgroud)

有没有办法序列化或保存队列,以便它可以在应用程序终止后恢复?

iphone objective-c ios afnetworking

8
推荐指数
1
解决办法
950
查看次数