我想要的是让spring autowire成为记录器.所以,换句话说,我想让这个工作:
import javax.servlet.http.HttpServletResponse;
import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class MainController {
@Autowired
private Logger logger;
@RequestMapping("/")
public String enterSite(HttpServletResponse response) {
logger.info("site entered");
return "welcome";
}
}
Run Code Online (Sandbox Code Playgroud)
现在它在启动时抛出异常:"找不到类型[org.slf4j.Logger]的限定bean用于依赖...".
我的pom.xml依赖项:
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.2.0.M1</version>
<relativePath /> <!-- lookup parent from repository -->
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-rest</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<scope>provided</scope>
</dependency>
<dependency> …Run Code Online (Sandbox Code Playgroud) 我对LibGDX和OpenGL很陌生,但我设法使用Box2D API进行简单的液体模拟.看到这个链接(这是别人的动画):
目前我将液体粒子渲染为圆形,就像在第一张图像中一样,但我想让它看起来像第三张图片一样自然.
答案可能是使用距离场,我尝试了这种方法,但没有效果.我使用SpriteBatch类将每个粒子绘制为纹理,但可以更改.我制作了一个纹理(来自程序性的Pixmap),它将每个粒子表示为一个实心圆,alpha通道从中心进一步减小,因此效果类似于第二张图.
现在,我必须启用一个阈值过滤器到alpha通道,例如:"只绘制alpha> 0.5的像素".这是后处理步骤,因为在绘制所有粒子之后,像素的alpha通道是多么重要.可能会或可能不会使用着色器(ProgramShader),但经过一些研究后我仍然不知道如何做到这一点.谢谢你的帮助.
编辑: 此示例解释了该方法,但它是在ActionScript中实现的.