问题标签 [demoscene]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1624 浏览

c# - .NET 中的动画效果?

有人可以给我指出一个带有简单图像动画的 C# 开源实现。

例如,我将输入图像提供给动画师,动画代码会生成几十张图像,如果按顺序显示,这些图像看起来就像动画。

我不是什么特别花哨的东西——像动画这样的简单 DirectX 过滤器就可以了。

0 投票
4 回答
6171 浏览

demoscene - 如何学习 4K 解码的疯狂艺术?

我非常喜欢演示场景,尤其是那些小的 4K exefiles。除了已经在 Windows 中找到的文件之外,它们没有任何依赖关系,它们展示了编程的强大功能:3D 图形 + 声音,全部为 4K。

这怎么可能?他们使用的是什么语言?贸易工具、最佳实践和重要网站有哪些?

0 投票
4 回答
3721 浏览

language-agnostic - 演示 (FX) 编码教程?

我正在寻找一些好的教程来帮助我开始进行演示编码。我在 CG 方面有一些背景,但这都是理论上的。
有很多常规的 3D 编程教程,但我特别想找一些老式的 2D 东西。

0 投票
7 回答
20648 浏览

c++ - 如何使用没有运行时库的 VC++ 内部函数

我参与了您尝试生成尽可能小的二进制文件的挑战之一,因此我正在构建没有C 或 C++ 运行时库 (RTL) 的程序。我没有链接到 DLL 版本或静态版本。我什至没有#include头文件。我有这个工作正常。

一些 RTL 函数,比如memset(),可能很有用,所以我尝试添加自己的实现。它在 Debug 版本中运行良好(即使对于那些编译器生成隐式调用的地方memset())。但是在发布版本中,我收到一条错误消息,说我无法定义内在函数。您会看到,在 Release 版本中,内部函数已启用,并且memset()是内部函数。

我很想memset()在我的发布版本中使用内在函数,因为它可能是内联的,并且比我的实现更小、更快。但我似乎是第 22 条军规中的一员。如果我不定义memset(),则链接器会抱怨它未定义。如果我定义了它,编译器会抱怨我不能定义一个内在函数。

有谁知道定义、声明、#pragma编译器和链接器标志的正确组合,以在不增加 RTL 开销的情况下获得内在函数?

Visual Studio 2008、x86、Windows XP+。

为了使问题更具体一点:

我这样构建:

如果我使用 的实现进行编译memset(),则会出现编译器错误:

如果我在没有实现的情况下编译它memset(),我会得到一个链接器错误:

0 投票
2 回答
631 浏览

delphi - kkrunchy - 如何摆脱 Delphi 可执行文件中的 tls 数据?

只是为了好玩和咯咯笑,我试图在 delphi中创建一个64k 的介绍。Farbrausch的 kkrunchy是这种规模应用程序的最佳可执行打包程序之一。但是,当我在(否则为空的)Delphi 可执行文件上运行它时,我得到以下输出

我猜 Delphi 可执行文件两者都可能是罪魁祸首,我没有真正的麻烦投入大量时间试图找出它是哪一个并发布修改可执行文件或类似的东西......但也许你们中的一个已经知道,甚至有一些关于如何规避这个问题的信息?

0 投票
1 回答
1212 浏览

linux - 从 ELFkickers 为 Ubuntu10.04 编译 sstrip:asm/elf.h 问题

我正在尝试在 linux 下创建微小的可执行文件。我的注意力转向了 Muppetlabs.com 上一个以前使用的工具,名为 sstrip,来自 ELFkickers 集合 ( http://www.muppetlabs.com/~breadbox/software/elfkickers.html ) 它从 ELF 可执行文件中剥离的字节比剥离更多的字节独自的。似乎在 HardyHeron 之前它一直在 Ubuntu 提要中,但现在它已经消失得无影无踪了。所以我尝试自己编译,但是 asm/elf.h 头文件似乎处于一个新位置,并且 gcc 退出了:

对于如何解决这个问题,有任何的建议吗?

或者有谁知道在哪里可以找到 PPA 中的条带?也许是另一种选择?

0 投票
3 回答
7673 浏览

3d - 64kB 演示,它们是如何工作的?

我看过一些程序显示了令人惊叹的高度详细的 3D 场景和配乐,但令我震惊的是它们都小于 64kB!这些程序如何运作?

在此处输入图像描述

0 投票
4 回答
605 浏览

3d - 哪些语言或方法允许图形和音乐演示适合 64kb 的 EXE?

怎么可能在一个64kb编译的 exe 中,这些程序可以生成如此疯狂的视觉效果,并配有匹配的音乐?

一个例子:Ars Nova By Phantom Lord运行演示的 YouTube 视频

这个程序只有64kb大小!他们是怎么做到的?

他们是否在 DirectX 或类似的东西中使用某种预先存在的对象、着色器等?

他们甚至使用什么语言?这东西有什么指南吗?

0 投票
3 回答
1108 浏览

3d - 实时光线追踪——Sult (Loonies, 4k Intro)

我想知道 Sult(链接:http ://www.youtube.com/watch?v=FWmv1ykGzis )的效果是如何实现的。这个介绍怎么可能进行实时光线追踪?

0 投票
4 回答
2181 浏览

graphics - 什么是旧游戏中的“横向滚动破解”?

我听说旧的街机横向滚动游戏使用特定的编程技巧来启用高性能横向滚动。

我知道几年前这些机器还不够强大,无法像现在这样每帧重新绘制整个屏幕。有一些技术,例如脏矩形,可以在背景静止且只有精灵移动时最小化重新绘制所需的屏幕区域。

上述方法仅在背景不改变时才有效(因此大部分屏幕像素保持静止)。

垂直滚动游戏,例如老式射击游戏,由于滚动而导致每一帧的背景都发生变化,因此事情变得更加困难。但是,可以利用像素被馈送到显示器的方式(逐行)。我想人们可以使用更大的缓冲区并将数据指针每帧“向下”移动几行,以便从另一个位置开始重新绘制,从而给人一种平滑滚动的印象。仍然只需要重新绘制精灵(以及屏幕边缘的一些背景),这是一个严重的优化。

然而,对于横版游戏来说,事情并不是那么简单明了。尽管如此,我知道过去的某个地方有人进行了优化,该优化(有一些限制)允许旧机器水平滚动背景而无需每帧重绘它。

IIRC 它被用于许多老游戏,主要是 80 年代的 beat'em ups,以及演示场景制作

你能描述一下这种技术并说出它的作者吗?