问题列表 - 第24014页

OpenGL渲染与自己的Phong照明实现

我已经使用以(0,0,0)为中心并直接观察球体原始的相机实现了Phong照明方案.以下是场景文件的相关内容,用于使用OpenGL查看场景以及使用我自己的实现渲染场景:

ambient 0 1 0

dir_light  1 1 1       -3 -4 -5

# A red sphere with 0.5 green ambiance, centered at (0,0,0) with radius 1
material  0 0.5 0  1 0 0    1 0 0   0 0 0  0 0 0  10 1 0
sphere   0    0 0 0    1   
Run Code Online (Sandbox Code Playgroud)

这里

由OpenGL生成的结果图像.

这里

我的渲染应用程序生成的图像.

如您所见,两者之间存在各种差异:

  1. 我的图像上的镜面高光小于OpenGL中的镜面高光.
  2. 漫反射表面似乎没有以正确的方式漫射,导致黄色区域在我的图像中不必要地变大,而在OpenGL中,有一个很好的深绿色区域更接近球体的底部
  3. OpenGL生成的颜色比我图像中的颜色深得多.

这些是我看到的最突出的三个差异.以下是我对Phong照明的实现:

R3Rgb Phong(R3Scene *scene, R3Ray *ray, R3Intersection *intersection)
{
  R3Rgb radiance;
  if(intersection->hit == 0)
  {
    radiance = scene->background;
    return radiance;
  }

  R3Vector normal …
Run Code Online (Sandbox Code Playgroud)

c++ opengl reflection raytracing

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

使用Cairo绘制夹紧的均匀立方B样条

我有一堆坐标,它们是2D平面上夹紧的均匀立方B样条的控制点.我想使用Cairo调用绘制此曲线(在Python中,使用Cairo的Python绑定),但据我所知,Cairo仅支持Bézier曲线.我也知道可以使用Bézier曲线绘制两个控制点之间的B样条曲线,但我无法在任何地方找到精确的公式.给定控制点的坐标,如何导出相应Bézier曲线的控制点?那有什么有效的算法吗?

python bezier cairo

3
推荐指数
1
解决办法
2699
查看次数

使用FFMPEG和url_fopen示例

我想知道如何从URL(url_fopen例如)(例如实时视频或PCM流)获取流并将其编码为某些内容?

更新: 这实际上是一个商城形成的问题.它是关于如何使用url_fopen流出来的东西.

答: 这很简单:有一篇简短的文章解释如何使用它 我有一个小的视频流解决方案实际上使用它并url_write称为 HelloVideoStreaming(windows sln)之前的许多版本.

好的是,你实际上并不真正需要或想要使用ffmpeg进行流式传输.但是你希望有可发送的编码数据包才能发送.我们有一个客户端(跨平台,预制项目生成脚本).主要的东西是使用 url_open_dyn_buf,这里url_close_dyn_buf很快就会介绍

c c++ streaming ffmpeg live

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

Django中的社交游戏机制

我希望用户在我的应用程序中接收完成各种任务的"积分" - 从标记对象到交友等任务.我还没有找到一个简化这个的Django应用程序.

目前我认为积累积分的最佳方式是每个用户操作创建相当于"流项目"的积分,并通过计算发布到其流的每个操作的值来计算积分.

显然,社交游戏机制是一个很大的领域,目前正在进行大量的研究.但从发展的角度来看,最简单的入门方式是什么?我是在错误的轨道上还是有更好/更简单的方法?

编辑:对于任何想要非常简单的实现的人:

对于那些对这个想法非常简单的实现感兴趣的人,尝试创建一个"日志记录"应用程序并将其放在models.py中:

log_models = [Tag, Post, Vote]

class Point(models.Model):
    # model fields

def increase_score(sender, instance, signal, *args, **kwargs):
    # score logic

for model in log_models:
    post_save.connect(increase_score, sender=model)
    post_delete.connect(decrease_score, sender=model)
Run Code Online (Sandbox Code Playgroud)

如果您发现post_save发出两次,请参阅此文档:http://code.djangoproject.com/wiki/Signals#Helppost_saveseemstobeemittedtwiceforeachsave

django django-models social-networking

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

在运行时根据类类型创建Delphi对象

是否可以通过调用方法在运行时根据类型创建对象.

我想要实现的是

var
  lForm1 : TForm;
  lForm2 : TForm;
begin
  CreateObjects([lForm1, lForm2]);
  // After this call I have the variables initialized and I can use them.
end;
Run Code Online (Sandbox Code Playgroud)

delphi runtime

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

在JavaScript中使用String.Format?

这让我疯了.我相信我问了同样的问题,但我再也找不到了(我使用Stack Overflow搜索,Google搜索,手动搜索我的帖子,搜索我的代码).

我想要的东西就像C#String.Format,你可以做类似的事情

string format = String.Format("Hi {0}",name);
Run Code Online (Sandbox Code Playgroud)

当然只是为JavaScript而且有一个人给了我一个简单的答案,它不像jQuery插件或任何东西,但我认为你做了一些JSON的东西,它工作起来很简单.

我为我的生活找不到这篇文章.

我在我的代码中确实有这个,但我似乎找不到任何使用它的东西,我很确定我曾经使用过几次:

String.prototype.format = function(o)
{
    return this.replace(/{([^{}]*)}/g,
       function(a, b)
       {
           var r = o[b];
           return typeof r === 'string' ? r : a;
       }
    );
};
Run Code Online (Sandbox Code Playgroud)

.net javascript c#

71
推荐指数
5
解决办法
13万
查看次数

如果我使用free或者使用malloc删除会有什么结果?

这是编译器错误还是运行时错误?下面的代码可以编译!

class Base{
void g();
void h();
};

int main()
{
    Base* p = new Base();
    free(p);
return 0;
}
Run Code Online (Sandbox Code Playgroud)

但是,如果我像这样声明类Base,则无法使用虚函数进行编译

class Base{
virtual void g();
void h();
};
Run Code Online (Sandbox Code Playgroud)

无论函数是否为虚函数,下面的代码都可以一直编译.

class Base{
void g();
void h();
};

int main()
{
    Base* p = (Base*)malloc(sizeof(Base));
    delete p;
return 0;
}
Run Code Online (Sandbox Code Playgroud)

c++ malloc memory-management new-operator

4
推荐指数
1
解决办法
971
查看次数

当我在我的方法中传递泛型时,如何获取类名?

我的方法看起来像:

public string DoObjectProperties<T>(T obj, string text)
{

}
Run Code Online (Sandbox Code Playgroud)

现在从方法中,我需要获取我传递给方法的'obj'参数的类名的字符串值.

因此,如果我传入User对象,我需要文本'user'.

获取我正在使用的属性: typeof(T).GetProperties()

我怎样才能获得课程名称?

c# reflection

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

Jetty 7高级分发,JSP和JSTL支持

我一直在努力使用Jetty 7及其对JSP和JSTL的支持.

我的JSP文件:

<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

<head>
  <title>blah</title>
</head>
<body>
  <table id="data">
    <tr class="columns">
      <td>Hour</td>
      <c:forEach var="campaign" items="${campaigns}">
        <td>${campaign}</td>            
      </c:forEach>
    </tr>

    <c:forEach var="hour" items="${results}">
      <tr>
        <td class="hour">${hour.key}</td>
        <c:forEach var="campaign" items="${campaigns}">
          <td>${hour[campaign]}</td>
        </c:forEach>            
      </tr>     
     </c:forEach>
  </table>  
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

上面的JSP部分按预期工作.然而,JSTL没有.广告系列和结果变量是servlet设置的请求属性.

我收到以下错误:

WARN: ... compiler.TagLibraryInfoImpl: Unknown element (deferred-value) in attribute
WARN: ... compiler.TagLibraryInfoImpl: Unknown element (deferred-value) in attribute
WARN: ... compiler.TagLibraryInfoImpl: Unknown element (deferred-value) in attribute …
Run Code Online (Sandbox Code Playgroud)

java jsp jstl jetty

7
推荐指数
2
解决办法
6991
查看次数

UIApplication openUrl不使用格式化的NSString

我有以下代码打开谷歌地图:

NSString *urlString = [NSString stringWithFormat:@"http://maps.google.com/maps?q=%@, Anchorage, AK",addressString];
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:urlString]];
Run Code Online (Sandbox Code Playgroud)

但它不起作用,没有错误.它只是没有打开.

iphone url iphone-sdk-3.0 uiapplication

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