Merge branch 'trunk' of github.com:lrre-foss/rnr into trunk

This commit is contained in:
floralrainfall 2023-07-20 03:49:43 -04:00
commit 4f0ebdffd0
26 changed files with 27 additions and 178 deletions

2
.gitmodules vendored
View File

@ -1,3 +1,3 @@
[submodule "Dependencies/Luau"] [submodule "Dependencies/Luau"]
path = Dependencies/Luau path = Dependencies/Luau
url = https://github.com/roblox/luau url = https://github.com/roblox/luau.git

Binary file not shown.

View File

@ -1,16 +0,0 @@
// generated by blender2ogre 0.8.3 on 2023-07-11 17:36:32
material Material {
receive_shadows on
technique {
pass {
diffuse 0.8 0.8 0.8 1.0
specular 0.512 0.512 0.512 1.0 64.0
texture_unit {
texture fonts/brick_tex.PNG
tex_address_mode wrap
colour_op modulate
}
}
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.6 KiB

View File

@ -1,137 +0,0 @@
material sparkle/sparkleMatl
{
technique
{
pass
{
lighting off
depth_write off
scene_blend add
texture_unit
{
texture sparkle.png
colour_op modulate
}
}
}
}
sparkle/sparkle1
{
quota 40
material sparkle/sparkleMatl
particle_width 1
particle_height 1
cull_each false
renderer billboard
sorted false
local_space false
iteration_interval 0
nonvisible_update_timeout 0
billboard_type point
billboard_origin center
billboard_rotation_type vertex
common_up_vector 0 1 0
point_rendering false
accurate_facing false
emitter Point
{
angle 180
colour 0.3 0.3 0.3 .6
colour_range_start 0.25 0.25 0.25 1
colour_range_end 0.5 0.5 0.5 1
direction 0 -1 0
emission_rate 160
position 0 0 0
velocity_min 5
velocity_max 10
duration .2
time_to_live 1
}
affector Rotator
{
rotation_speed_range_end 360
rotation_range_start 0
rotation_range_end 360
}
}
material explosion/explosionMatl
{
technique
{
pass
{
lighting off
depth_write off
scene_blend add
texture_unit
{
texture explosion.png
colour_op modulate
}
}
}
}
explosion/explosion1
{
quota 400
material explosion/explosionMatl
particle_width 5
particle_height 5
cull_each false
renderer billboard
sorted false
local_space false
iteration_interval 0
nonvisible_update_timeout 0
billboard_type point
billboard_origin center
billboard_rotation_type vertex
common_up_vector 0 1 0
point_rendering false
accurate_facing false
emitter Point
{
angle 180
colour 0.3 0.3 0.3 .6
colour_range_start 0.25 0.25 0.25 1
colour_range_end 0.5 0.5 0.5 1
direction 0 -1 0
emission_rate 20000
position 0 0 0
velocity 30
velocity_min 20
velocity_max 30
time_to_live 0.3
time_to_live_min 0.25
time_to_live_max 0.35
duration 1.2
duration_min 1.2
duration_max 1.2
repeat_delay 10000
repeat_delay_min 10000
repeat_delay_max 10000
}
affector DeflectorPlane
{
plane_point 0 0 0
plane_normal 0 1 0
bounce 0
}
affector DirectionRandomiser
{
randomness 0
scope 1
keep_velocity false
}
}

View File

@ -1,5 +1,5 @@
// generated by blender2ogre 0.8.3 on 2023-07-17 02:58:22 // generated by blender2ogre 0.8.3 on 2023-07-17 02:58:22
material BackMaterial { material materials/BackMaterial {
receive_shadows on receive_shadows on
technique { technique {
pass { pass {

View File

@ -1,5 +1,5 @@
// generated by blender2ogre 0.8.3 on 2023-07-17 02:58:22 // generated by blender2ogre 0.8.3 on 2023-07-17 02:58:22
material BottomMaterial { material materials/BottomMaterial {
receive_shadows on receive_shadows on
technique { technique {
pass { pass {

View File

@ -1,5 +1,5 @@
// generated by blender2ogre 0.8.3 on 2023-07-17 02:58:22 // generated by blender2ogre 0.8.3 on 2023-07-17 02:58:22
material FrontMaterial { material materials/FrontMaterial {
receive_shadows on receive_shadows on
technique { technique {
pass { pass {

View File

@ -1,5 +1,5 @@
// generated by blender2ogre 0.8.3 on 2023-07-17 02:58:22 // generated by blender2ogre 0.8.3 on 2023-07-17 02:58:22
material LeftMaterial { material materials/LeftMaterial {
receive_shadows on receive_shadows on
technique { technique {
pass { pass {

View File

@ -1,5 +1,5 @@
// generated by blender2ogre 0.8.3 on 2023-07-17 02:58:22 // generated by blender2ogre 0.8.3 on 2023-07-17 02:58:22
material RightMaterial { material materials/RightMaterial {
receive_shadows on receive_shadows on
technique { technique {
pass { pass {

View File

@ -1,5 +1,5 @@
// generated by blender2ogre 0.8.3 on 2023-07-17 02:58:22 // generated by blender2ogre 0.8.3 on 2023-07-17 02:58:22
material TopMaterial { material materials/TopMaterial {
receive_shadows on receive_shadows on
technique { technique {
pass { pass {

View File

@ -1,4 +1,4 @@
material materials/guibase3d material materials/GuiBase3d
{ {
technique technique
{ {

View File

@ -1,4 +1,4 @@
material materials/partinstanced material materials/PartInstanced
{ {
receive_shadows on receive_shadows on

Binary file not shown.

View File

@ -1,7 +1,7 @@
# Blender 3.5.1 MTL File: 'None' # Blender 3.5.1 MTL File: 'None'
# www.blender.org # www.blender.org
newmtl Material newmtl Cube
Ns 250.000000 Ns 250.000000
Ka 1.000000 1.000000 1.000000 Ka 1.000000 1.000000 1.000000
Kd 0.800000 0.800000 0.800000 Kd 0.800000 0.800000 0.800000

View File

@ -1,6 +1,6 @@
# Blender 3.5.1 # Blender 3.5.1
# www.blender.org # www.blender.org
mtllib part_mesh.mtl mtllib Cube.mtl
o FormFactor_Brick o FormFactor_Brick
v 1.000000 1.000000 -1.000000 v 1.000000 1.000000 -1.000000
v 1.000000 -1.000000 -1.000000 v 1.000000 -1.000000 -1.000000
@ -31,7 +31,7 @@ vt 0.375000 1.000000
vt 0.375000 0.000000 vt 0.375000 0.000000
vt 0.125000 0.750000 vt 0.125000 0.750000
s 0 s 0
usemtl Material usemtl Cube
f 1/1/1 5/5/1 7/9/1 3/3/1 f 1/1/1 5/5/1 7/9/1 3/3/1
f 4/4/2 3/3/2 7/10/2 8/12/2 f 4/4/2 3/3/2 7/10/2 8/12/2
f 8/13/3 7/11/3 5/6/3 6/8/3 f 8/13/3 7/11/3 5/6/3 6/8/3

View File

@ -15,22 +15,22 @@
</nodes> </nodes>
<externals > <externals >
<item type="material" > <item type="material" >
<file name="TopMaterial.material" /> <file name="../materials/TopMaterial.material" />
</item> </item>
<item type="material" > <item type="material" >
<file name="BackMaterial.material" /> <file name="../materials/BackMaterial.material" />
</item> </item>
<item type="material" > <item type="material" >
<file name="BottomMaterial.material" /> <file name="../materials/BottomMaterial.material" />
</item> </item>
<item type="material" > <item type="material" >
<file name="FrontMaterial.material" /> <file name="../materials/FrontMaterial.material" />
</item> </item>
<item type="material" > <item type="material" >
<file name="LeftMaterial.material" /> <file name="../materials/LeftMaterial.material" />
</item> </item>
<item type="material" > <item type="material" >
<file name="RightMaterial.material" /> <file name="../materials/RightMaterial.material" />
</item> </item>
</externals> </externals>
<environment > <environment >

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

View File

@ -93,7 +93,7 @@ namespace RNR
Ogre::FontPtr pFont = Ogre::FontManager::getSingletonPtr()->create("ComicSans", Ogre::ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME); Ogre::FontPtr pFont = Ogre::FontManager::getSingletonPtr()->create("ComicSans", Ogre::ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME);
pFont->setType(Ogre::FT_TRUETYPE); pFont->setType(Ogre::FT_TRUETYPE);
pFont->setSource("fonts/comic.ttf"); pFont->setSource("fonts/ComicSans.ttf");
pFont->setTrueTypeSize(16); pFont->setTrueTypeSize(16);
pFont->load(); pFont->load();

View File

@ -100,7 +100,7 @@ namespace RNR
bc_prep = true; bc_prep = true;
} }
Ogre::MaterialPtr part_material = Ogre::MaterialManager::getSingletonPtr()->getByName("materials/partinstanced"); Ogre::MaterialPtr part_material = Ogre::MaterialManager::getSingletonPtr()->getByName("materials/PartInstanced");
color_material = part_material->clone(Ogre::String("tmp_part/") + Ogre::StringConverter::toString(color_id)); color_material = part_material->clone(Ogre::String("tmp_part/") + Ogre::StringConverter::toString(color_id));
Ogre::RTShader::ShaderGenerator::getSingletonPtr()->cloneShaderBasedTechniques(*part_material, *color_material); Ogre::RTShader::ShaderGenerator::getSingletonPtr()->cloneShaderBasedTechniques(*part_material, *color_material);
Ogre::Technique* mat_tech = color_material->getTechnique(0); Ogre::Technique* mat_tech = color_material->getTechnique(0);

View File

@ -8,6 +8,6 @@ namespace RNR
m_transparency = 0.f; m_transparency = 0.f;
m_visible = true; m_visible = true;
m_material = Ogre::MaterialManager::getSingletonPtr()->getByName("materials/guibase3d"); m_material = Ogre::MaterialManager::getSingletonPtr()->getByName("materials/GuiBase3d");
} }
} }

View File

@ -13,7 +13,7 @@ namespace RNR
m_reflectance = 0.0; m_reflectance = 0.0;
setNode(world->getOgreSceneManager()->getRootSceneNode()->createChildSceneNode()); setNode(world->getOgreSceneManager()->getRootSceneNode()->createChildSceneNode());
setObject(world->getOgreSceneManager()->createEntity("fonts/Cube.mesh")); setObject(world->getOgreSceneManager()->createEntity("meshes/cube.mesh"));
getNode()->attachObject(getObject()); getNode()->attachObject(getObject());
updateMatrix(); updateMatrix();

View File

@ -8,7 +8,7 @@ namespace RNR
Workspace::Workspace() : ModelInstance() Workspace::Workspace() : ModelInstance()
{ {
setName("Workspace"); setName("Workspace");
m_batchMode = BATCH_DONT; m_batchMode = BATCH_STATIC_GEOMETRY;
m_worldspawn = world->getOgreSceneManager()->getRootSceneNode()->createChildSceneNode(); m_worldspawn = world->getOgreSceneManager()->getRootSceneNode()->createChildSceneNode();
@ -19,7 +19,7 @@ namespace RNR
break; break;
case BATCH_STATIC_GEOMETRY: case BATCH_STATIC_GEOMETRY:
m_geom = world->getOgreSceneManager()->createStaticGeometry("workspaceGeom"); m_geom = world->getOgreSceneManager()->createStaticGeometry("workspaceGeom");
m_geom->setRegionDimensions(Ogre::Vector3(2048,2048,2048)); m_geom->setRegionDimensions(Ogre::Vector3(4096, 4096, 4096));
m_geom->setCastShadows(true); m_geom->setCastShadows(true);
break; break;
case BATCH_DONT: case BATCH_DONT:
@ -38,7 +38,7 @@ namespace RNR
case BATCH_INSTANCED: case BATCH_INSTANCED:
{ {
Ogre::Entity* childEntity = (Ogre::Entity*)childAdded->getObject(); Ogre::Entity* childEntity = (Ogre::Entity*)childAdded->getObject();
Ogre::InstancedEntity* replica = m_instanceManager->createInstancedEntity("materials/partinstanced"); Ogre::InstancedEntity* replica = m_instanceManager->createInstancedEntity("materials/PartInstanced");
replica->setPosition(part->getPosition()); replica->setPosition(part->getPosition());
replica->setOrientation(part->getCFrame().getRotation()); replica->setOrientation(part->getCFrame().getRotation());
replica->setScale(part->getSize()); replica->setScale(part->getSize());

View File

@ -34,6 +34,8 @@ Additionally, you must also acquire the content folder of the Roblox client you
Finally, you may run `cmake --build .` in the path of the folder you've cloned the repository to so that you may configure and then finally build RNR. Finally, you may run `cmake --build .` in the path of the folder you've cloned the repository to so that you may configure and then finally build RNR.
P.S.: You can check our [GitHub actions page](https://github.com/lrre-foss/rnr/actions) to browse automatic ready-to-run Windows (and soon Linux) builds for each commit. :-)
# License # License
RNR is licensed under two separate licenses: RNR is licensed under two separate licenses:
- All of RNR, with the sole exception of the engine, is licensed under the [GNU General Public License v3.0](https://www.gnu.org/licenses/gpl-3.0.txt). - All of RNR, with the sole exception of the engine, is licensed under the [GNU General Public License v3.0](https://www.gnu.org/licenses/gpl-3.0.txt).