Little tweaks and add the logo to mods.toml

This commit is contained in:
JozsefA 2021-06-19 16:52:23 -07:00
parent 1295b278a2
commit 7d6ec7d28f
5 changed files with 27 additions and 33 deletions

View file

@ -1,5 +1,5 @@
<div align="center"> <div align="center">
<img src="https://i.imgur.com/yVFgPpr.png" alt="Logo" width="250"> <img src="https://i.imgur.com/yVFgPpr.png" alt="Logo by @voxel_dani on Twitter" width="250">
<h1>Flywheel</h1> <h1>Flywheel</h1>
<h6>A modern engine for modded Minecraft.</h6> <h6>A modern engine for modded Minecraft.</h6>
<a href="https://discord.gg/xjD59ThnXy"><img src="https://img.shields.io/discord/841464837406195712?color=844685&label=Discord&style=flat" alt="Discord"></a> <a href="https://discord.gg/xjD59ThnXy"><img src="https://img.shields.io/discord/841464837406195712?color=844685&label=Discord&style=flat" alt="Discord"></a>
@ -7,14 +7,21 @@
<br> <br>
</div> </div>
### About ## About
The goal of this project is to provide tools for mod developers so they no longer have to worry about performance, or limitations of Minecraft's archaic rendering engine. The goal of this project is to provide tools for mod developers so they no longer have to worry about performance, or limitations of Minecraft's archaic rendering engine.
That said, this is primarily an outlet for me to have fun with graphics programming. That said, this is primarily an outlet for me to have fun with graphics programming.
### Instancing ### Instancing
Flywheel provides an alternate, unified path for entity and tile entity rendering that takes advantage of GPU instancing. In doing so, Flywheel gives the developer the flexibility to define their own vertex and instance formats, and write custom shaders to ingest that data.
So far, Flywheel provides an alternate, unified path for entity and tile entity rendering that takes advantage of GPU instancing. In doing so, Flywheel gives the developer the flexibility to define their own vertex and instance formats, and write custom shaders to ingest that data.
### Shaders ### Shaders
To accomodate the developer and leave more in the hands of the engine, Flywheel provides a custom shader loading and templating system to hide the details of the CPU/GPU interface. This system is a work in progress. There will be breaking changes, and I make no guarantees of backwards compatibility. To accomodate the developer and leave more in the hands of the engine, Flywheel provides a custom shader loading and templating system to hide the details of the CPU/GPU interface. This system is a work in progress. There will be breaking changes, and I make no guarantees of backwards compatibility.
### Plans
- Vanilla performance improvements
- Compute shader particles
- Deferred rendering
- Different renderers for differently aged hardware

View file

@ -32,8 +32,6 @@ minecraft {
accessTransformer = file('src/main/resources/META-INF/accesstransformer.cfg') accessTransformer = file('src/main/resources/META-INF/accesstransformer.cfg')
// Default run configurations.
// These can be tweaked, removed, or duplicated as needed.
runs { runs {
client { client {
workingDirectory project.file('run') workingDirectory project.file('run')
@ -53,16 +51,7 @@ minecraft {
server { server {
workingDirectory project.file('run') workingDirectory project.file('run')
// Recommended logging data for a userdev environment
// The markers can be changed as needed.
// "SCAN": For mods scan.
// "REGISTRIES": For firing of registry events.
// "REGISTRYDUMP": For getting the contents of all registries.
property 'forge.logging.markers', 'REGISTRIES' property 'forge.logging.markers', 'REGISTRIES'
// Recommended logging level for the console
// You can set various levels here.
// Please read: https://stackoverflow.com/questions/2031163/when-to-use-the-different-log-levels
property 'forge.logging.console.level', 'debug' property 'forge.logging.console.level', 'debug'
arg "-mixin.config=flywheel.mixins.json" arg "-mixin.config=flywheel.mixins.json"
@ -77,16 +66,7 @@ minecraft {
data { data {
workingDirectory project.file('run') workingDirectory project.file('run')
// Recommended logging data for a userdev environment
// The markers can be changed as needed.
// "SCAN": For mods scan.
// "REGISTRIES": For firing of registry events.
// "REGISTRYDUMP": For getting the contents of all registries.
property 'forge.logging.markers', 'REGISTRIES' property 'forge.logging.markers', 'REGISTRIES'
// Recommended logging level for the console
// You can set various levels here.
// Please read: https://stackoverflow.com/questions/2031163/when-to-use-the-different-log-levels
property 'forge.logging.console.level', 'debug' property 'forge.logging.console.level', 'debug'
// Specify the modid for data generation, where to output the resulting resource, and where to look for existing resources. // Specify the modid for data generation, where to output the resulting resource, and where to look for existing resources.
@ -111,15 +91,15 @@ sourceSets.main.resources { srcDir 'src/generated/resources' }
repositories { repositories {
maven { maven {
//location of the maven for mixed mappings and registrate //location of the maven for mixed mappings and registrate
name = "tterrag maven" name "tterrag maven"
url = "https://maven.tterrag.com/" url "https://maven.tterrag.com/"
} }
} }
dependencies { dependencies {
minecraft "net.minecraftforge:forge:${minecraft_version}-${forge_version}" minecraft "net.minecraftforge:forge:${minecraft_version}-${forge_version}"
annotationProcessor 'org.spongepowered:mixin:0.8:processor' annotationProcessor 'org.spongepowered:mixin:0.8.2:processor'
} }
// Example for how to get properties into the manifest for reading by the runtime.. // Example for how to get properties into the manifest for reading by the runtime..
@ -140,6 +120,13 @@ jar {
jar.finalizedBy('reobfJar') jar.finalizedBy('reobfJar')
task sourcesJar(type: Jar) {
from sourceSets.main.allSource
archiveBaseName.set(project.archivesBaseName)
archiveVersion.set("${project.version}")
archiveClassifier.set('sources')
}
tasks.curseforge.enabled = !dev && project.hasProperty('jozu_curseforge_key') tasks.curseforge.enabled = !dev && project.hasProperty('jozu_curseforge_key')
curseforge { curseforge {
@ -151,8 +138,7 @@ curseforge {
id = project.projectId id = project.projectId
changelog = file('changelog.txt') changelog = file('changelog.txt')
releaseType = project.curse_type releaseType = project.curse_type
mainArtifact(jar) { mainArtifact jar
displayName = "${archivesBaseName}-${version}" addArtifact sourcesJar
}
} }
} }

View file

@ -72,7 +72,7 @@ public class WeakHashSet<T> extends AbstractSet<T> {
@Override @Override
public boolean remove(Object o) { public boolean remove(Object o) {
return map.remove((T) o) != null; return map.remove(o) != null;
} }
@Override @Override
@ -82,7 +82,7 @@ public class WeakHashSet<T> extends AbstractSet<T> {
@Override @Override
public boolean contains(Object o) { public boolean contains(Object o) {
return map.containsKey((T) o); return map.containsKey(o);
} }
@Override @Override
@ -93,7 +93,7 @@ public class WeakHashSet<T> extends AbstractSet<T> {
@Override @Override
public boolean containsAll(Collection<?> c) { public boolean containsAll(Collection<?> c) {
return c.stream() return stream()
.allMatch(map::containsKey); .allMatch(map::containsKey);
} }

View file

@ -7,6 +7,7 @@ license = "LGPLv3"
modId = "flywheel" modId = "flywheel"
version = "${file.jarVersion}" version = "${file.jarVersion}"
displayName = "Flywheel" displayName = "Flywheel"
logoFile="logo.png"
displayURL = "https://www.curseforge.com/minecraft/mc-mods/flywheel" displayURL = "https://www.curseforge.com/minecraft/mc-mods/flywheel"
authors="Jozufozu" authors="Jozufozu"
description = ''' description = '''
@ -23,6 +24,6 @@ side = "BOTH"
[[dependencies.flywheel]] [[dependencies.flywheel]]
modId = "minecraft" modId = "minecraft"
mandatory = true mandatory = true
versionRange = "[1.16.5,1.17)" versionRange = "[1.16.3,1.17)"
ordering = "NONE" ordering = "NONE"
side = "BOTH" side = "BOTH"

BIN
src/main/resources/logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 72 KiB